whi*_*der 7 java ant annotations javac
我在运行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
Run Code Online (Sandbox Code Playgroud)
添加<compilerarg value="implicit" />产品:
[javac] error: Class names, 'implicit', are only accepted if annotation processing is explicitly requested
[javac] 1 error
Run Code Online (Sandbox Code Playgroud)
添加<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
Run Code Online (Sandbox Code Playgroud)
有人可以了解警告意味着什么,我该如何摆脱它?
我创建一个简单的 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>
Run Code Online (Sandbox Code Playgroud)
使用引用自定义注释的简单 .java。但不提供源代码。
public class T {
@TestAnn
public void test() {
}
}
Run Code Online (Sandbox Code Playgroud)
ant命令的输出与您的第一个输出相同。我尝试执行javac命令来编译它,但error: cannot find symbol @TestAnn被打印出来。我不知道为什么消息不一样。
然后我添加注释类并再次运行ant命令。构建成功,没有任何警告。
对于你的问题,可能的原因是:
-processorpath或-processor选项,以便javac可以找到合适的处理器。