I can't figure out to get this working.
Scenario:
- I have an application built with gradle
- The application uses JavaFX
What I want
- Use a variable (defined per developer machine) which points to an installation of a JDK which will be used for building the whole application / tests / ...
I thought about having the gradle.properties
file, defining the variable. Something like
JAVA_HOME_FOR_MY_PROJECT=<path to my desired JDK>
What I don't want
- point
JAVA_HOME
to the desired JDK
I could live with many suggestions:
- a solution that defines a system environment variable which I'm able to check in my build.gradle script
- a variable defined in gradle.properties
- overriding the JAVA_HOME variable only for the build context (something like
use JAVA_HOME=<my special JDK path defined somewhere else defined>
) - something else I didn't think about
Question:
- How to wire a variable (how ever defined, as variable in the
gradle.properties
, system environment variable, ...) to the build process?
I have more than one JDK7 available and need to point to a special version (minimum JDK_u version).
Any answer is appreciated and I'm thankful for every hint to the right direction.
there is a Gradle plugin that download/bootstraps a JDK automatically:
https://plugins.gradle.org/plugin/com.github.rmee.jdk-bootstrap
No IDE integration yet and a decent shell required on Windows.
As seen in Gradle (Eclipse plugin)
http://www.gradle.org/get-started
If you are using this Eclipse plugin or Enide Studio 2014, alternative JAVA_HOME to use (set in Preferences) will be in version 0.15, see http://www.nodeclipse.org/history
If you add JDK_PATH in gradle.properties your build become dependent on on that particular path. Instead Run gradle task with following command line parametemer
This way your build is not dependent on some concrete path.
If you are using linux and gradle wrapper you can use following solution.
Add path to local.properties file:
Add to your gradlew script file:
In this solution, each developer can set his own JDK path. File
local.properties
shouldn't be included in version control system.