Java 未设置引导类路径
我刚刚将java升级到1.7.0_60。我正在使用maven构建我的组件。当我尝试在组件上运行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<
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或编译器插件?