当尝试通过ant
构建vuze时,出现了奇怪的错误:
[javac] /home/jalil/src/azureus-4.3.0.6/com/aelitis/azureus/core/impl/AzureusCoreImpl.java:1087: for-each loops are not supported in -source 1.4
[javac] (use -source 5 or higher to enable for-each loops)
[javac] for (Object l : runningListeners) {
[javac] ^
[javac] /home/jalil/src/azureus-4.3.0.6/com/aelitis/azureus/core/instancemanager/impl/AZInstanceImpl.java:41: generics are not supported in -source 1.4
[javac] (use -source 5 or higher to enable generics)
[javac] Map<String,Object> map )
[javac] ^
[javac] 100 errors
BUILD FAILED
/home/jalil/src/azureus-4.3.0.6/build.xml:39: Compile failed; see the compiler error output for details.
最佳答案
您的编译器期望的代码符合1.5以上的Java版本。 Foreach循环和泛型是仅在Java 1.5中添加的功能,这就是编译器拒绝该代码的原因。您还会收到一条非常明确的错误消息,解释该问题以及如何解决。
您需要编辑传递给javac的命令行(可能通过编辑ant文件),以通过提供-source 1.5
(或1.6
或1.7
等)或其同义词-source 5
(或6
)来确保它期望Java 1.5或更高版本的输入。或7
等)。您也可以尝试完全删除任何-source
选项,默认值可能比所需的1.5
更新。
https://stackoverflow.com/questions/14008880/