警告: bootstrap类path未与-source 1.5一起设置

生成时我收到警告消息!

警告:[选项] bootstrap类path未与-source 1.5一起设置

我该如何解决?

来自博客文章 :

要使用JDK N中的javac交叉编译到较旧的平台版本,正确的做法是:

  • 使用较旧的资源设置。
  • 将bootclasspath设置为针对较旧平台的rt.jar(或等效)进行编译。

如果不采取第二步,那么javac将尽职尽责地使用旧的语言规则,并结合新的库,这可能导致类文件不能在旧版平台上工作,因为可能包含对不存在的方法的引用。

bootclasspath用法

 javac -bootclasspath /usr/lib/jvm/java-7-oracle/jre/lib/rt.jar \ -source 1.7 Main.java 

在UNIX系统上,使用以下命令findrt.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上testing了Oracle Java 7和8。

目前,我正在Linux Mint 17.1上运行带有JDK 1.8的Netbeans IDE 8.0.2,它具有java -version = 1.7.0_65。 因此,为了能够运行JAR文件,我必须设置myProject>属性>源/二进制格式:JDK 7.但是,当构build(myProject>清理和构build)时,我得到了一个类似的警告:warning:[options] bootstrap class path not set连同来源1.7。

解决scheme是将Linux Mint JDK1.7平台添加到Netbeans平台列表中。

这可以通过转到myProject> Properties> Libraries并单击Manage Platforms …button来完成。 然后在Java Platform Manager窗口中单击添加平台…并select:Java Standard Edition,单击下一步并浏览至/ usr / lib / jvm / java-7-openjdk-amd64(或者JDK 1.7版本的位置)。 平台名称将被设置为JDK1.7。 只需点击完成,你就完成了。

您现在可以在项目属性中selectJava平台。 通过selectJDK1.7并运行Clean and Build:不再有警告。 🙂

可以使用-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选项禁用警告名称…

选项警告有关使用命令行选项的问题。 有关这种警告的示例,请参阅交叉编译示例。