Ant 警告:隐式编译的文件不受注释处理

问题描述 投票:0回答:1

我在运行 Ant 构建脚本(Ant 1.8.2、Java 1.6)时收到此警告。

[javac] warning: Implicitly compiled files were not subject to annotation processing.
[javac] Use -proc:none to disable annotation processing or -implicit to specify a policy for implicit compilation.
[javac] 1 warning

添加

<compilerarg value="implicit" />
会产生:

[javac] error: Class names, 'implicit', are only accepted if annotation processing is explicitly requested
[javac] 1 error

添加

<compilerarg value="proc:none" />
会产生:

[javac] javac: invalid flag: proc:none
[javac] Usage: javac <options> <source files>
[javac] use -help for a list of possible options

有人可以解释一下警告的含义以及如何消除它吗?

java ant annotations javac
1个回答
0
投票

我创建了一个简单的build.xml

<?xml version="1.0" encoding="UTF-8"?>
<project name="test" default="build" basedir=".">
    <target name="build">
        <javac destdir="bin" srcdir="." includes="**/*.java">
        </javac>
    </target>
</project>

使用引用自定义注释的简单 .java。但不提供源代码。

public class T {
    @TestAnn
    public void test() {
    }
}

ant命令的输出与您的第一个输出相同。我尝试执行 javac 命令来编译它,但是打印了 error: cannot find symbol @TestAnn

 。我不知道为什么消息不一样。

然后我添加注释类并再次运行

ant 命令。构建成功,没有任何警告。

对于您的问题,可能的原因是:

© www.soinside.com 2019 - 2024. All rights reserved.