Java / Maven / Tomcat:bootstrap类路径未与-source 1.6一起设置

时间:2013-08-27 21:29:47

标签: java maven tomcat bootstrapping

所以,我在系统上安装了多个版本的Java(1.7和1.6)。我需要使用1.6,因此,在Ubuntu上,我做了一个更新替代--config java并将其更改为1.6。现在java -version告诉我我正在使用1.6。

所以,我正在尝试使用Maven构建。如果我进行mvn clean安装,我最终会出现以下错误:

[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

我做了一些寻找那个错误,似乎我需要在某处设置某种BootClassPath,但我似乎无法找到非常明确的指示。

有人可以指导我解决错误吗?

2 个答案:

答案 0 :(得分:10)

将-avource与-source一起使用时,需要指定bootstrap类路径,以确保在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

有关详细信息,请参阅http://vanillajava.blogspot.nl/2012/02/using-java-7-to-target-much-older-jvms.html

答案 1 :(得分:2)

“bootstrap类路径”错误可能只会出现,如果你使用的是JDK而不是版本6.如你所说要使用JDK 6,而你似乎使用其他版本,则应首先更改它。 除此之外,您的问题将与以下内容重复: warning: [options] bootstrap class path not set in conjunction with -source 1.5