Remove tools.jar dependency
- Dominant language
- Java
- Stars
- 1.4k
- Forks
- 350
- PR merge metrics
- No merged PRs in 30d
Description
We are currently shipping com.sun:tools.jar on the ImageJ update site. This is improper usage of an intended system scope dependency, which should and of questionable legality. It also causes duplicate class conflicts with the Fiji [javac fork](https://github.com/fiji/javac).
To fully remove our dependency on com.sun:tools:
- [x] Remove the com.sun:tools dependency from [ImageJA](https://github.com/imagej/imageja), [Minimaven](https://github.com/scijava/minimaven) and [SciJava scripting-java](https://github.com/scijava/scripting-java/)
- [x] Replace necessary usage with 'javax.tools.ToolProvider.getSystemJavaCompiler'. Note that this implies a minimum Java version of 1.6
- [ ] Turn off the multitude of error messages that are printed by minimaven.. these are intended to be debug logging statements..
- [ ] Update the [imagej-launcher](https://github.com/imagej/imagej-launcher) to read and write JDK locations in the imagej.cfg. We should auto-detect when possible, merge with existing (e.g. user-specified) entries, and prune invalid locations
- [ ] Create an options menu to select JDK version, driven by the .cfg file
- [x] Make the java 8 compiler be detected first before javac's compiler so we can make things work in both java 6 and java 8
- [x] Remove com.sun:tools.jar and javac fork from the update site (or put this stuff on java 8 update site)
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.