Java 警告:[选项]引导类路径未与-source 1.5一起设置

Java 警告:[选项]引导类路径未与-source 1.5一起设置,java,Java,我在构建时收到警告消息 警告:[选项]引导类路径未与一起设置 -来源1.5 如何修复它?来自: 要使用JDK N中的javac将编译器交叉到较旧的平台版本,正确的做法是: 使用旧的源设置 设置bootclasspath以针对旧平台的rt.jar(或等效文件)进行编译 如果不采取第二步,javac将尽职尽责地使用旧的语言规则和新的库,这可能导致类文件无法在旧的平台上工作,因为可以包含对不存在的方法的引用 从a: 要使用JDK N中的javac将编译器交叉到较旧的平台版本,正确的做法是: 使用

我在构建时收到警告消息

警告:[选项]引导类路径未与一起设置 -来源1.5

如何修复它?

来自:

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

  • 使用旧的源设置
  • 设置bootclasspath以针对旧平台的rt.jar(或等效文件)进行编译
如果不采取第二步,javac将尽职尽责地使用旧的语言规则和新的库,这可能导致类文件无法在旧的平台上工作,因为可以包含对不存在的方法的引用

从a:

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

  • 使用旧的源设置
  • 设置bootclasspath以针对旧平台的rt.jar(或等效文件)进行编译
如果不采取第二步,javac将尽职尽责地使用旧的语言规则和新的库,这可能导致类文件无法在旧的平台上工作,因为可以包含对不存在的方法的引用


可以使用-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平台(添加已安装的JDK)->确定

  • 下载JDK(在书面警告版本上)->安装

  • 右键单击项目->属性->库->Java平台(添加已安装的JDK)->确定


  • 确保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>