我正在爲主要是普通Java的庫生成Javadoc,但由於生成了一個類並且需要向該類添加一個方法(並且我可以爲此使用繼承),我爲它創建了一個AspectJ文件。當然,我必須通過爲它所屬的類加上前綴來定義新方法。javadoc似乎將.aj文件中的類名作爲包名稱對待
現在的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工具套件3.1.0.RELEASE(Eclipse中)
P.S.內JDK 1.7_09我嘗試使用ajdoc,但是無法解析org.junit,org.slf4j或org.apache.xxx。
您的方面是真的命名爲'classname_extensionname.aj'還是一個複製/粘貼錯誤?看起來很奇怪。 – kriegaex
嗯,我不想把它稱爲classname.aj,以防我想添加其他方面。我們稱之爲classname_aspectname.aj。實際上,類名是TdkQoS,而aspectname是字符串。 – user1844643
你沒有明白我的觀點。我指的是代碼中的方面名稱,而不是文件名稱。爲什麼方面名稱最後有「.aj」? – kriegaex