源值1.5已过时,将在以后的版本中删除

时间:2014-06-20 16:23:20

标签: android

如何防止以下两个警告生成停止构建过程的错误?

-compile:
    [javac] Compiling 77 source files to /Users/andev/Workspace/android/products/myproject/1.0/Facebook/bin/classes
    [javac] warning: [options] source value 1.5 is obsolete and will be removed in a future release
    [javac] warning: [options] target value 1.5 is obsolete and will be removed in a future release
    [javac] warning: [options] To suppress warnings about obsolete options, use -Xlint:-options.
    [javac] error: warnings found and -Werror specified
    [javac] 1 error
    [javac] 3 warnings

3 个答案:

答案 0 :(得分:22)

另一种可能性(将修复使用Ant制作的所有 Android版本),是调整-compile<android-sdk>\tools\ant\build.xml任务的默认参数。

<!-- compilation options -->部分,您可以设置编译器标志:

<property name="java.compilerargs" value="-Xlint:-options" />

或者,更改源和目​​标参数:

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

截至目前,1.6足以避免警告。

答案 1 :(得分:4)

为了能够构建,我在facebook项目(编译的第一个项目)中创建了一个文件ant.properties,内容为:

java.compilerargs=-Xlint:-options

答案 2 :(得分:3)

这是在${sdk.dir}/tools/ant/build.xml文件中设置的。在文件的开头有许多property设置,例如

<!-- compilation options -->
<property name="java.encoding" value="UTF-8" />
<property name="java.target" value="1.5" />
<property name="java.source" value="1.5" />
<property name="java.compilerargs" value="" />
<property name="java.compiler.classpath" value="" />

此文件的开头也是注释

At the beginning of the file is a list of properties that can be overridden
by adding them to your ant.properties (properties are immutable, so their
first definition sticks and is never changed).

因此,为了覆盖一般的任何属性,特别是源值和目标值,您可以将这些属性放入项目目录中的ant.properties文件中

java.source=1.6
java.target=1.6

这会覆盖${sdk.dir}/tools/ant/build.xml中的默认设置,从而阻止警告。