Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/rest/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 未设置引导类路径_Java_Maven_Java 7_Building - Fatal编程技术网

Java 未设置引导类路径

Java 未设置引导类路径,java,maven,java-7,building,Java,Maven,Java 7,Building,我刚刚将java升级到1.7.0_60。我正在使用maven构建我的组件。当我尝试在组件上运行mvn测试时,我会收到此错误消息- [INFO]编译失败 无法分析错误消息:警告:[选项]引导类路径未与-source 1.5一起设置 我认为这可能与tools.jar有关,并在我的pom.xml <dependency> <groupId>com.sun</groupId> <artifactId>tools<

我刚刚将java升级到1.7.0_60。我正在使用maven构建我的组件。当我尝试在组件上运行
mvn测试时,我会收到此错误消息-

[INFO]编译失败
无法分析错误消息:警告:[选项]引导类路径未与-source 1.5一起设置

我认为这可能与
tools.jar有关,并在我的
pom.xml

    <dependency>
        <groupId>com.sun</groupId>
        <artifactId>tools</artifactId>
        <version>1.0</version>
        <scope>system</scope>
        <systemPath>C:\Program Files\Java\jdk1.7.0_60\lib\tools.jar</systemPath>
    </dependency>

com.sun
工具
1
系统
C:\ProgramFiles\Java\jdk1.7.0\U 60\lib\tools.jar

但我还是遇到了同样的问题。为了摆脱这个问题,我应该怎么做?

您正在编译Java源代码版本1.5,但您正在使用JDK 7进行编译。这意味着编译器使用Java7类库链接代码,这可能会导致运行时出现问题

例如,如果您的代码使用
Long.compare(Long,Long)
方法,编译将成功,即使您将目标设置为1.5,因为编译器在编译时检查
Long
类(来自Java 7类库),并发现确实存在
Long.compare(Long,Long)
方法。但是,当您尝试在Java1.5上运行此代码时,它将失败,因为Java1.5没有
Long.compare(Long,Long)
方法


基本上,编译器是在警告您,您声称此代码符合Java 1.5,但您编译的Java类库可能包含Java 1.5中实际不存在的方法。

如何解决此问题?或者有什么办法吗?我刚才提到的警告消息,这部分:
警告:[options]引导类路径未与-source 1.5一起设置,只是一个警告。这不应妨碍汇编。Maven抱怨它无法解析警告。可能还有其他错误消息?我使用maven 3.2.1,它可以很好地处理这个警告。也许可以尝试升级maven或编译器插件?