Java 警告:[选项]引导类路径未与-source 1.5一起设置
我在构建时收到警告消息 警告:[选项]引导类路径未与一起设置 -来源1.5 如何修复它?来自: 要使用JDK N中的javac将编译器交叉到较旧的平台版本,正确的做法是:Java 警告:[选项]引导类路径未与-source 1.5一起设置,java,Java,我在构建时收到警告消息 警告:[选项]引导类路径未与一起设置 -来源1.5 如何修复它?来自: 要使用JDK N中的javac将编译器交叉到较旧的平台版本,正确的做法是: 使用旧的源设置 设置bootclasspath以针对旧平台的rt.jar(或等效文件)进行编译 如果不采取第二步,javac将尽职尽责地使用旧的语言规则和新的库,这可能导致类文件无法在旧的平台上工作,因为可以包含对不存在的方法的引用 从a: 要使用JDK N中的javac将编译器交叉到较旧的平台版本,正确的做法是: 使用
- 使用旧的源设置
- 设置bootclasspath以针对旧平台的rt.jar(或等效文件)进行编译李>
- 使用旧的源设置
- 设置bootclasspath以针对旧平台的rt.jar(或等效文件)进行编译李>
可以使用-Xlint系列,-Xlint:-选项中的新JDK 7子选项禁用警告。e、 g $javac-source 1.5-Xlint:-options-example.java 资料来源: 及 可以使用-Xlint选项启用或禁用的警告 使用-Xlint:name选项启用警告名称,其中name是以下警告名称之一。类似地,您可以使用-Xlint:-name选项禁用警告名称: 选择权
警告有关使用命令行选项的问题。有关此类警告的示例,请参见交叉编译示例。可以使用-Xlint系列,-Xlint:-选项中的新JDK 7子选项禁用该警告。e、 g $javac-source 1.5-Xlint:-options-example.java 资料来源: 及 可以使用-Xlint选项启用或禁用的警告 使用-Xlint:name选项启用警告名称,其中name是以下警告名称之一。类似地,您可以使用-Xlint:-name选项禁用警告名称: 选择权
警告有关使用命令行选项的问题。有关此类警告的示例,请参见交叉编译示例。我目前正在Linux Mint 17.1上运行带有JDK 1.8的Netbeans IDE 8.0.2,其java-version=1.7.0\u 65。因此,为了能够运行JAR文件,我必须设置myProject>Properties>Source/Binary格式:JDK7。但是,在构建(myProject>清理和构建)时,我收到了类似的警告:警告:[选项]引导类路径未与-source 1.7一起设置 解决方案是将LinuxMintJDK1.7平台添加到Netbeans平台列表中 这可以通过转到myProject>属性>库并单击管理平台。。。按钮然后在Java平台管理器窗口中单击添加平台。。。然后选择:Java标准版,单击Next并浏览到/usr/lib/jvm/Java-7-openjdk-amd64(或者JDK1.7版本的任何位置)。平台名称将设置为JDK1.7。只需单击Finish,您就完成了
现在可以在项目属性中选择Java平台。通过选择JDK1.7并运行Clean和Build:无更多警告。:-) 我目前正在Linux Mint 17.1上运行带有JDK 1.8的Netbeans IDE 8.0.2,其java-version=1.7.0_65。因此,为了能够运行JAR文件,我必须设置myProject>Properties>Source/Binary格式:JDK7。但是,在构建(myProject>清理和构建)时,我收到了类似的警告:警告:[选项]引导类路径未与-source 1.7一起设置 解决方案是将LinuxMintJDK1.7平台添加到Netbeans平台列表中 这可以通过转到myProject>属性>库并单击管理平台。。。按钮然后在Java平台管理器窗口中单击添加平台。。。然后选择:Java标准版,单击Next并浏览到/usr/lib/jvm/Java-7-openjdk-amd64(或者JDK1.7版本的任何位置)。平台名称将设置为JDK1.7。只需单击Finish,您就完成了
现在可以在项目属性中选择Java平台。通过选择JDK1.7并运行Clean和Build:无更多警告。:-) 引导类路径使用情况
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
在Ubuntu14.04上针对Oracle Java 7和8进行测试。引导类路径使用
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
在Ubuntu14.04上针对Oracle Java 7和8进行测试
确保jdk版本和java编译器源代码版本相同。例如,如果您使用的是maven,并且使用JDK9设置了项目,那么下面的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>
org.apache.maven.plugins
maven编译器插件
3.8.1
1.8
1.8
...
将源/目标版本更正为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>