0

无论出于何种原因,由于更改,我不得不更改 pc,我现在必须使用 Java 6(最终更新)而不是 java 7。将现有项目导入 Java 6 时,我在自动生成的代码中收到以下错误由 Netbeans 生成,不可修改

cannot find symbol

symbol: variable Type

location: class Window

    frame.setType(java.awt.Window.Type.POPUP); //Type is underlined

错误的输出如下:

javac: invalid target release: 1.7
Usage: javac <options> <source files>
use -help for a list of possible options
C:\Users\Adminstrator\Downloads\NetBeansProjects\NetBeansProjects\Pat0.3\nbproject\build-impl.xml:915: The following error occurred while executing this line:
C:\Users\Adminstrator\Downloads\NetBeansProjects\NetBeansProjects\Pat0.3\nbproject\build-impl.xml:268: Compile failed; see the compiler error output for details.

这是做什么的?是否有必要,删除该组件有帮助吗?它是哪个组件,有快速修复吗?

4

2 回答 2

2

您的 build.xml 将target="1.7"标志指定给 javac,java 6 不知道如何解释。从技术上讲,将其更改为 1.6 将克服该错误。

但是,枚举Window.Type是在 Java 7 中添加的,因此您根本不能指望更改目标会起作用;您项目的源代码使用 Java 7 功能。我敢肯定,这不是唯一的。

因此,您的选择是有条不紊地检查并删除/替换所有 Java 7 代码(可能会引入一些错误),或者只是安装 Java 7。

于 2013-10-07T18:04:49.060 回答
0

在您的项目中,有一个 java 编译器设置告诉它为 jre7 生成类。javacfromjdk6无法为该版本生成类,因此出现错误。因此,您应该查看项目的属性并设置javacjr6. 例如,如果您使用了 java 7 附带的功能,例如菱形运算符或多捕获块等,您可能还修复了一些未生成的代码。

Window.Type的 javadoc也声明它仅从 1.7 开始可用。您可能想要重新生成该代码或更好,但只需安装jdk7.

于 2013-10-07T18:05:50.317 回答