apply plugin: 'java' apply plugin: 'eclipse'
You can now execute the following command to generate the Eclipse configuration files .project and .classpath:
$ gradle eclipse
You can now import and existing project into Eclipse, and enjoy all the correct configurations!
However, in the current Gradle version (1.6), the generated library paths are absolute, for example:
C:/Users/Miguel/.gradle/caches/artifacts-24/filestore/ junit/junit/4.11/source/ 28e0ad201304e4a4abf999ca0570b7cffc352c3c/junit-4.11-sources.jar
This leads to problems because if you commit these files in source code control, your specific user settings will be imposed on other developers.
One way to avoid this is to use an Eclipse Classpath Variable and customize the Eclipse plug-in output.
eclipse { // find gradle cache location def gradleCache = null for (o in configurations.compile) { if (o.toString().indexOf(".gradle") != -1) { final def token = "filestore" def s = o.toString() def idx = s.indexOf(token) if (idx != -1) { gradleCache = new File(s.substring(0, idx + token.length())) break } } } assert gradleCache && gradleCache.exists() println "GRADLE_CACHE: " + gradleCache // replace absolute paths with classpath variable GRADLE_CACHE pathVariables 'GRADLE_CACHE': gradleCache // make sure GRADLE_CACHE is defined in // Eclipse, Preferences, Java, Build Path, Classpath Variables }
Note: an alternative solution could use Eclipse workspace Path variables (referred using the ${...} notation) but without DSL support like the pathVariables statement above.
No comments:
Post a Comment