Ant использует -source 7 или выше, чтобы включить бриллиантовый оператор

Я уверен, что это довольно простой вопрос, но я застрял с созданием приложения для Android, используя Ant из командной строки. Я получил это сообщение: (use -source 7 or higher to enable diamond operator), Что мне добавить в buildfile, чтобы он компилировался с использованием Java 1.7?

4 ответа

Решение

Решено, если кто-то еще застрял на этом. Я должен был изменить <import file="${sdk.dir}/tools/ant/build.xml"/> файл. Есть свойства <property name="java.target" value="1.5" /> <property name="java.source" value="1.5" /> и значения должны быть изменены на 1,7

Вам нужно установить java.source а также java.target, Либо через -D:

ant release -Djava.source=7 -Djava.target=7

Или положить его в ant.properties в вашем проекте:

# ant.properies contents:
java.source=7
java.target=7

Решение Гейзенберга правильное (слава и +1...), но не чистое: вам не нужно менять мастера build.xml файл (плохо!), вам нужно добавить предложенные строки:

<property name="java.target" value="1.7" />
<property name="java.source" value="1.7" />

прямо перед линией

<import file="${sdk.dir}/tools/ant/build.xml" />

в местном build.xml файл, и параметры по умолчанию будут переопределены.

Надеюсь, поможет!

Просто чтобы уточнить, я изменил свой ant.properties следующее:

java.target=1.7
java.source=1.7

Внесение изменений в build.xml до того, как предложенная выше строка по какой-то причине мне не помогло.

Другие вопросы по тегам