Xcode:"-source 1.3中不支持泛型"编译器错误?

时间:2020-03-06 14:29:52  来源:igfitidea点击:

只是一个简单的问题:

我是CS本科生,只有Eclipse和Net Beans IDE的经验。我最近购买了一台Macbook,并想用Xcode重新编译一个最近的学校项目,只是为了对其进行测试。在我声明ArrayList的新实例的行之后:

dictionary = new ArrayList<String>();

我收到以下错误:-source 1.3中不支持泛型。

我只是想知道是否有人可以提供有关问题可能的建议。同一项目在同一台机器上的Eclipse中编译。我正在使用Java 1.5.0_13运行OSX 10.5.4.

谢谢你。

解决方案

泛型是在Java 5中引入的,因此不能将泛型与-source 1.3选项一起使用。

Xcode中对Java的支持已过时且无法维护。它是Xcode唯一仍使用从Project Builder继承的"旧"构建系统的位。甚至苹果公司也建议改用Eclipse。对于Java,Eclipse和NetBeans在Mac上都可以很好地工作。如果我们想尝试本机Mac编程,请使用Objective-C和Cocoa,Xcode很好。

就是说,问题在于javac的目标是Java 1.3,而Java 1.3没有泛型。我们可以按如下所示修改Ant构建文件(build.xml)中的javac引用:

<target name="compile" depends="init" description="Compile code">
    <mkdir dir="${bin}"/>
    <javac deprecation="on" srcdir="${src}" destdir="${bin}"
           source="1.3" target="1.2"

将"源"和"目标"更改为" 1.5"。

build.xml文件放置在

/Developer/Library/XCode/Project Templates/Java/Java Tool/build.xml

(用我们自己的项目替换Java Tool)。

如果在第30行中查找source =" XX" target =" YY",然后将XX和YY更改为首选值,则情况会更好,就像之前的文章中所述。

干杯,

彼得