我在构建时收到警告消息!
警告:[options] bootstrap类路径未设置 -source 1.5
我该如何解决?
答案 0 :(得分:95)
来自blog post:
要使用JDK N中的javac交叉编译到较旧的平台版本,正确的做法是:
- 使用较旧的-source设置。
- 将bootclasspath设置为针对旧平台的rt.jar(或等效项)进行编译。
如果不采取第二步,javac将尽职尽责地使用旧语言规则与新库相结合,这可能导致类文件无法在较旧的平台上运行,因为可以包含对不存在的方法的引用。
答案 1 :(得分:34)
bootclasspath用法
javac -bootclasspath /usr/lib/jvm/java-7-oracle/jre/lib/rt.jar \
-source 1.7 Main.java
在UNIX系统上,使用以下命令找到rt.jar
:
locate -r '/rt.jar$'
设置JAVA_HOME
以便rt.jar
位于$JAVA_HOME/jre/lib/rt.jar
,然后:
javac -source 1.7 -bootclasspath "$JAVA_HOME/jre/lib/rt.jar" Main.java
在Ubuntu 14.04上针对Oracle Java 7和8进行了测试。
答案 2 :(得分:4)
我目前在Linux Mint 17.1上运行带有JDK 1.8的Netbeans IDE 8.0.2,它有java -version = 1.7.0_65。因此,为了能够运行JAR文件,我必须设置myProject>属性>源/二进制格式:JDK 7.但是当构建(myProject>清理和构建)时,我得到了类似的警告:警告:[options] bootstrap类路径未设置与-source 1.7一起使用。
解决方案是将Linux Mint JDK1.7平台添加到Netbeans平台列表中。
这可以通过转到myProject> Properties> Libraries并单击Manage Platforms ...按钮来完成。然后在Java Platform Manager窗口中单击Add Platform ...并选择:Java Standard Edition,单击Next并浏览到/ usr / lib / jvm / java-7-openjdk-amd64(或者JDK 1.7版本的任何位置) )。平台名称将设置为JDK1.7。只需点击完成即可完成。
您现在可以在项目属性中选择Java平台。通过选择JDK1.7并运行Clean and Build:不再有警告。 : - )
答案 3 :(得分:2)
可以使用-Xlint系列中的新JDK 7子选项禁用警告:-Xlint:-options。例如
$ javac -source 1.5 -Xlint:-options example.java
来源:https://blogs.oracle.com/darcy/entry/bootclasspath_older_source
和
http://docs.oracle.com/javase/7/docs/technotes/tools/solaris/javac.html#xlintwarnings
可以使用-Xlint选项启用或禁用的警告
使用-Xlint:name选项启用警告名称,其中name是以下警告名称之一。同样,您可以使用-Xlint选项禁用警告名称:-name: ...
选项 警告有关使用命令行选项的问题。有关此类警告的示例,请参阅交叉编译示例。
答案 4 :(得分:1)
确保您的jdk版本和Java编译器源版本相同。例如,如果您正在使用maven,并已使用JDK 9设置了项目,则遵循pom片段将通过上述警告
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
...
</configuration>
</plugin>
将源/目标版本更正为9可修复以下警告
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<configuration>
<source>9</source>
<target>9</target>
...
</configuration>
</plugin>
答案 5 :(得分:1)
如果您在 Windows 上使用 Apache NetBeans IDE:
1 - 检查在以下位置选择了哪个 Java 版本:
Menu Bar -> Tools -> Options -> Java -> Java Platform
2 - 在以下位置选择相同的 Java 版本:
Menu Bar -> Run -> Set Project Configuration -> Customize... -> Sources -> Source/Binary Format
答案 6 :(得分:-1)
下载JDK (警告书面版本) - &gt;安装
右键单击您的项目 - &gt;属性 - &gt;图书馆 - &gt; Java平台(添加已安装的JDK) - &gt;确定