Xcode: 'Generics не поддерживается в -source 1.3' ошибка компилятора? - PullRequest
2 голосов
/ 21 сентября 2008

просто быстрый вопрос:

Я являюсь студентом CS и имею опыт работы с Eclipse и IDE Net Beans. Я недавно приобрел Macbook и хотел перекомпилировать недавний школьный проект в Xcode, чтобы проверить его. Сразу после строки, где я объявляю новый экземпляр ArrayList:

dictionary = new ArrayList<String>(); 

Я получаю следующую ошибку: Обобщения не поддерживаются в -source 1.3 .

Мне просто было интересно, кто-нибудь может дать совет относительно того, в чем может быть проблема. Тот же проект компилируется в Eclipse на той же машине. Я использую OSX 10.5.4 с Java 1.5.0_13.

Спасибо.

Ответы [ 3 ]

8 голосов
/ 21 сентября 2008

Поддержка Java в XCode устарела и не поддерживается; это единственный бит Xcode, который все еще использует «старую» систему сборки, унаследованную от Project Builder. Даже Apple предлагает вместо этого использовать Eclipse. Для Java Eclipse и NetBeans работают достаточно хорошо на Mac; если вы хотите попробовать нативное программирование на Mac, используйте Objective-C и Cocoa, для которых Xcode подходит.

Тем не менее, проблема в том, что javac ориентирован на Java 1.3, которая не имеет обобщений. Вы можете изменить ссылку на javac в файле сборки Ant (build.xml) следующим образом:

    <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".

0 голосов
/ 02 октября 2008

Файл build.xml помещается в

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

(замените Java Tool вашим собственным проектом).

Если вы ищете source="XX" target="YY" в строке 30 и измените XX и YY на предпочитаемые значения, дела пойдут лучше, как описано в предыдущих постах.

Приветствия

Pieter

0 голосов
/ 21 сентября 2008

Обобщения представлены в Java 5, поэтому вы не можете использовать обобщения с опцией -source 1.3.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...