Coder Social home page Coder Social logo

Comments (2)

ysb33r avatar ysb33r commented on September 6, 2024

Thinking around loading jruby-complete.jar ...

In order to have this JAR available within the main Gradle runner, we have two options I believe

[1] Specify require version in buildscript

buildscript {
  dependencies {
    classpath 'org.jruby.jruby-complete:1.7.15'
  }
}

Relatively simple, but causes a conflict in UX. There is already a jruby.jrubyVersion and a `jruby.execVersion' that respectively controls the version for artifact building and executing ruby scripts. Now we are adding a 3rd way? Maybe not such a good idea

[2] Use a classloader. This is more complex to code, but is could actually utilise the jruby.jrubyVersion value and late-load the jar. However, we need to be sure that we only ever load one version of jruby-complete within the Gradle process. We also need to be sure as to when we are going to need this within the process. What if we start using ruby scripting as part of configuration? Since jruby.jrubyVersion is not fully set until project.evaluate() is called, we could end up in the nasty situation where we need to load a version of jruby only to be told later that it is the wrong version. Now option 1 suddenly looks better...

from jruby-gradle-plugin.

rtyler avatar rtyler commented on September 6, 2024

We have JRubyExec now and I've not seen other needs for embedding Ruby in Gradle files so I'm going to close this

from jruby-gradle-plugin.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.