Ant使用-source 7或更高版本来启用钻石操作员

Hei*_*erg 18 java ant android

我相信这很简单,但我仍然坚持使用命令行中的Ant构建Android应用程序.我收到了这条消息:(use -source 7 or higher to enable diamond operator).我将什么添加到构建文件以使其使用Java 1.7进行编译?

rzy*_*mek 26

你需要设置java.sourcejava.target.通过-D:

ant release -Djava.source=7 -Djava.target=7
Run Code Online (Sandbox Code Playgroud)

或者把它ant.properties放在你的项目中:

# ant.properies contents:
java.source=7
java.target=7
Run Code Online (Sandbox Code Playgroud)


Hei*_*erg 17

解决了它,如果其他人被困在这一个.我不得不改变<import file="${sdk.dir}/tools/ant/build.xml"/>档案.有属性 <property name="java.target" value="1.5" /> <property name="java.source" value="1.5" />,值应更改为1.7


Ric*_*k77 6

海森堡的解决方案是正确的(荣誉和+1 ......)但不干净:你不必更改主build.xml文件(坏!),你需要的是添加他建议的行:

<property name="java.target" value="1.7" />
<property name="java.source" value="1.7" />
Run Code Online (Sandbox Code Playgroud)

就行前

<import file="${sdk.dir}/tools/ant/build.xml" />
Run Code Online (Sandbox Code Playgroud)

本地 build.xml文件中,将覆盖默认选项.

希望能帮助到你!