So, I have more than one version of Java installed on the system (1.7 and 1.6). I need to use 1.6, so, being on Ubuntu, I did an update-alternatives --config java and changed it to the 1.6. Now java -version tells me I'm using 1.6.
So, I'm trying to build using Maven. If I do a mvn clean install, I end up with the following error:
[ERROR] bootstrap class path not set in conjunction with -source 1.6
/path/to/SomeResultSetStub.java:[32,7] error: SomeResultSetStub is not abstract and does not override abstract method <T>getObject(String,Class<T>) in ResultSet
I did some looking for that error, and it seems like I need to set some kind of BootClassPath somewhere, but I can't seem to find very explicit instructions for doing so.
Can anyone guide me through resolving the error?
When using javac in conjunction with -source you need to specify the bootstrap classpath to make sure no runtime errors occur when running your compiled code on a 1.6 jvm...
public class Main {
public static void main(String[] args) {
System.out.println("Hello World!");
}
}
$ javac -target 1.7 -source 1.7 Main.java
$ javac -target 1.6 -source 1.6 Main.java
warning: [options] bootstrap class path not set in conjunction with -source 1.6
1 warning
$ javac -Xbootclasspath:/usr/java/jdk1.6.0_29/jre/lib/rt.jar -target 1.6 -source 1.6 Main.java
$ javac -Xbootclasspath:/usr/java/jdk1.5.0_22/jre/lib/rt.jar -target 1.5 -source 1.5 Main.java
$ javac -Xbootclasspath:/usr/java/jdk1.4.0_30/jre/lib/rt.jar -target 1.4 -source 1.4 Main.java
$ javac -Xbootclasspath:/usr/java/jdk1.3.1_29/jre/lib/rt.jar -target 1.3 -source 1.3 Main.java
$ javac -Xbootclasspath:/usr/java/jdk1.2.2_017/jre/lib/rt.jar -target 1.2 -source 1.2 Main.java
$ javac -Xbootclasspath:/usr/java/jdk1.1.8_16/jre/lib/rt.jar -target 1.1 -source 1.2 Main.java
$ javac -Xbootclasspath:/usr/java/jdk1.1.8_16/jre/lib/rt.jar -target 1.1 -source 1.1 Main.java
javac: invalid source release: 1.1
Usage: javac
use -help for a list of possible options
$ javac -Xbootclasspath:/usr/java/jdk1.1.8_16/jre/lib/rt.jar -target 1.0 -source 1.0 Main.java
javac: invalid target release: 1.0
Usage: javac
use -help for a list of possible options
See http://vanillajava.blogspot.nl/2012/02/using-java-7-to-target-much-older-jvms.html for more information.
The "bootstrap class path" error may only appear, if you are using a JDK other then version 6. as you said you want to use JDK 6, and you seem to use an other version, you should first change that. Apart from that though, your question would be a duplicate of: warning: [options] bootstrap class path not set in conjunction with -source 1.5
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With