-
Bug
-
Resolution: Not an Issue
-
P3
-
None
-
7
-
x86
-
windows_7
FULL PRODUCT VERSION :
java version "1.7.0_05"
Java(TM) SE Runtime Environment (build 1.7.0_05-b05)
Java HotSpot(TM) 64-Bit Server VM (build 23.1-b03, mixed mode)
ADDITIONAL OS VERSION INFORMATION :
Windows 7x64 SP1
Windows XP SP3
A DESCRIPTION OF THE PROBLEM :
Adding tools.jar to "jre/lib/ext" folder does not work anymore. In JDK 6 it was possible to add tools.jar to "jre/lib/ext" folder and have system java compiler be returned by javax.tools.ToolProvider.getSystemJavaCompiler().
Now with JDK 7 it is no longer working. If I add jar to "jre/lib/ext" folder then ToolProvider.getSystemJavaCompiler() returns null. But if add tools.jar to the "jre/lib" folder then it works.
REGRESSION. Last worked in version 6u31
STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
1. Install JRE 1.7.0_05
2. Compile test code provided.
3. Copy tools.jar to jre/lib/ext folder
4. Run code => and error will be thrown
5. Now move tools.jar from jre/lib/ext to jre/lib folder and re-run => it will work
EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
javax.tools.ToolProvider.getSystemJavaCompiler() should return an instance of JavaCompiler class
ACTUAL -
javax.tools.ToolProvider.getSystemJavaCompiler() returns null
REPRODUCIBILITY :
This bug can be reproduced always.
---------- BEGIN SOURCE ----------
import javax.tools.JavaCompiler;
public class CompilerTest {
public static void main(String[] args) {
JavaCompiler systemCompiler =
javax.tools.ToolProvider.getSystemJavaCompiler();
if (systemCompiler == null) {
throw new Error("systemCompiler == null!");
}
}
}
---------- END SOURCE ----------
CUSTOMER SUBMITTED WORKAROUND :
Copy tools.jar to "jre/lib" folder instead of "jre/lib/ext" folder
java version "1.7.0_05"
Java(TM) SE Runtime Environment (build 1.7.0_05-b05)
Java HotSpot(TM) 64-Bit Server VM (build 23.1-b03, mixed mode)
ADDITIONAL OS VERSION INFORMATION :
Windows 7x64 SP1
Windows XP SP3
A DESCRIPTION OF THE PROBLEM :
Adding tools.jar to "jre/lib/ext" folder does not work anymore. In JDK 6 it was possible to add tools.jar to "jre/lib/ext" folder and have system java compiler be returned by javax.tools.ToolProvider.getSystemJavaCompiler().
Now with JDK 7 it is no longer working. If I add jar to "jre/lib/ext" folder then ToolProvider.getSystemJavaCompiler() returns null. But if add tools.jar to the "jre/lib" folder then it works.
REGRESSION. Last worked in version 6u31
STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
1. Install JRE 1.7.0_05
2. Compile test code provided.
3. Copy tools.jar to jre/lib/ext folder
4. Run code => and error will be thrown
5. Now move tools.jar from jre/lib/ext to jre/lib folder and re-run => it will work
EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
javax.tools.ToolProvider.getSystemJavaCompiler() should return an instance of JavaCompiler class
ACTUAL -
javax.tools.ToolProvider.getSystemJavaCompiler() returns null
REPRODUCIBILITY :
This bug can be reproduced always.
---------- BEGIN SOURCE ----------
import javax.tools.JavaCompiler;
public class CompilerTest {
public static void main(String[] args) {
JavaCompiler systemCompiler =
javax.tools.ToolProvider.getSystemJavaCompiler();
if (systemCompiler == null) {
throw new Error("systemCompiler == null!");
}
}
}
---------- END SOURCE ----------
CUSTOMER SUBMITTED WORKAROUND :
Copy tools.jar to "jre/lib" folder instead of "jre/lib/ext" folder