1

我正在编译许多可能用 Java1.3 编写的遗留 Java 代码,我遇到了很多这样的错误:

Copydir.java:128: warning: as of release 5, 'enum' is a keyword, and may not be used as an identifier

[javac] (use -source 5 or higher to use 'enum' as a keyword)
[javac]             Enumeration enum = filecopyList.keys();

用 _enum 替换每个枚举实例太耗时,所以我在 ant javac 任务中添加了 source="1.3" ,如下所示(基于http://ant.apache.org/manual/Tasks/javac.html的示例)。但是我仍然遇到相同的编译错误。我试图改变 source = 1.4,1.5,但仍然是同样的错误。

<javac srcdir="${src.dir}"

destdir="${build.classes}"

debug="true" debuglevel="lines,vars,source"

source="1.3"

deprecation="off"

optimize="on"> 

告诉编译器源是用 1.3 编写的,但我想编译它以在 1.6 中运行的正确方法是什么?我正在使用 jdk1.6.0.26 和 ant 1.8.2

4

1 回答 1

2

这是一个警告,而不是错误。除非构建中存在其他应该可以正常工作的错误。

于 2012-04-16T20:04:36.983 回答