我正在为一个主要是纯 Java 的库生成 Javadoc,但是因为生成了一个类并且我需要向该类添加一个方法(并且我不能为此使用继承),所以我创建了一个 AspectJ 文件它。自然,我必须通过在它所属的类前面加上前缀来定义新方法。
现在 Javadoc 正在中止并显示错误消息:
javadoc: error - Illegal package name: "C:\company\project\library\trunk\library\src\main\java\com\company\project\library\classname_extensionname.aj"
(替换名称以保护无辜者)在 .aj 文件中,我有:
package com.company.project.library;
import com.company.project.library.classname;
public aspect classname_extensionname {
// various static final variables
// various static methods to help the method I'm publicising
public String classname.toString() {
StringBuffer buffer = new StringBuffer();
buffer.append( /* various bits and pieces */ );
return buffer.toString();
}
}
(原始问题错误地在“公共方面”开头的行末尾有“.aj”)
那么这有什么问题呢?
我在 Spring Tool Suite 3.1.0.RELEASE (Eclipse) 中使用 jdk 1.7_09
PS 我尝试使用 ajdoc,但无法解析 org.junit、org.slf4j 或 org.apache.xxx。