您的位置:首页 > 编程语言 > Java开发

Java自定义注解问题追踪及解决

2016-06-02 13:46 399 查看

警告:在搜索路径中找不到指定的 AnnotationProcessorFactory "com.dusk.annoation.database.InterfaceExtractorProcessorFactory"。

警告:未找到注释处理器,但存在注释。

多么令人沮丧的场景啊!




这是使用apt处理自定义注解的时候发生的场景。

先上解决方案再谈引申:

这是因为你的AnnotationProcessorFactory类在你的虚拟机中找不到的原因,做法是预先编译你的自定义注解的相关类,然后把它加入你的classpath中。

我是写了一个批处理文件

rem 项目根目录
set PROJECT_ROOT=C:\Users\army_du163.com\Workspaces\MyEclipse 2015 CI\ThinkInJava
rem 包目录路径
set PACKAGEPATH=com\dusk\annoation\database
rem 运行根路径
set RUN_ROOT=%PROJECT_ROOT%\bin
rem 源文件所在目录路径
set SRC_ROOT=%PROJECT_ROOT%\src\main\java
rem 设置Classpath
set CLASSPATH=.;%JAVA_HOME%;%JAVA_HOME%/lib/tools.jar;%RUN_ROOT%

cd %SRC_ROOT%\%PACKAGEPATH%

apt -nocompile -factory com.dusk.annoation.database.InterfaceExtractorProcessorFactory Multiplier.java
pause其中的运行根目录RUN_ROOT=%PROJECT_ROOT%\bin是我myeclipse编译后字节码文件存放的地方,如果你打成了jar包,这里应该是你jar包的路径。

接下来我们看一下apt的用法,apt -help



一目了然。

当然了,apt在jdk6,jdk7的bin目录下是存在的,如果你用的是JDK8你会发现没有apt.exe,那么怎么办呢?

我也不会啊!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: