如何從Java源文件中提取JavaDoc註釋?以及按照我的意願格式化它們?如何從源文件中提取JavaDoc註釋
5
A
回答
3
見Javadoc Tool Home Page的所以Doclet節的標準方法。
Doclets標準doclet生成HTML並且內置到Javadoc工具中。這裏列出了Java軟件開發的其他doclet。 ..
1
使用生成它們:javadoc的*的.java,然後只要你想重寫stylesheet.css中......
0
作爲替代方案,您可能會考慮我寫的一個類,名爲FilteredLineIterator
,它可用於從源文件中刪除所有JavaDoc行。
(這個答案是一個類似於我在this question寫道。)
一個FilteredLineIterator
是一個字符串迭代器,過濾器(保留或抑制)在另一迭代器的元素,基於「實體」(單線,塊和「隱形」塊),每行存在。保留行可以選擇修改。
(FilteredLineIterator
是XBN-Java部分罐子可以下載here。)
實施例的頂部和設置:
import com.github.xbn.linefilter.FilteredLineIterator;
import com.github.xbn.linefilter.KeepUnmatched;
import com.github.xbn.linefilter.Returns;
import com.github.xbn.linefilter.entity.BlockEntity;
import com.github.xbn.linefilter.entity.EntityRequired;
import com.github.xbn.linefilter.entity.KeepMatched;
import com.github.xbn.linefilter.entity.NewBlockEntityFor;
import com.github.xbn.linefilter.entity.NewStealthBlockEntityFor;
import com.github.xbn.linefilter.entity.StealthBlockEntity;
import com.github.xbn.testdev.GetFromCommandLineAtIndex;
import com.github.xbn.util.IncludeJavaDoc;
import java.util.Iterator;
/**
<P>{@code java ExtractAllJavaDocBlockTextRaw examples\com\github\xbn\examples\linefilter\JavaClassWithOneCommentAndTwoJavaDocBlocks_input.txt}</P>
**/
public class ExtractAllJavaDocBlockTextRaw {
public static final void main(String[] cmd_lineParams) {
//Example setup:
Iterator<String> rawInputLineItr = GetFromCommandLineAtIndex.fileLineIterator(
cmd_lineParams, 0,
null); //debugPath
主要部分的下方開始。 JavaDoc塊定義爲block entity,其中只保留中間(不是開始或結束)行。爲了防止在塊打開前發現錯誤的「結束行」錯誤 - 由於JavaDoc和「正常」(非JavaDoc)多行註釋的結束行爲*/
- 必須聲明正常多行註釋的a stealth block。
輸入的原始行迭代器和兩個實體都被饋送到過濾的行迭代器。
StealthBlockEntity javaMlcBlock = NewStealthBlockEntityFor.javaComment(
"comment", IncludeJavaDoc.NO,
null, //dbgStart (on=System.out, off=null)
null, //dbgEnd
KeepMatched.NO, EntityRequired.YES, null,
null); //dbgLineNums
BlockEntity javaDocBlock = NewBlockEntityFor.javaDocComment_Cfg(
"doccomment",
null, //dbgStart
null, //dbgEnd
EntityRequired.YES, null,
null). //dbgLineNums
keepMidsOnly().build();
FilteredLineIterator filteredItr = new FilteredLineIterator(
rawInputLineItr, Returns.KEPT, KeepUnmatched.NO,
null, null, //dbgEveryLine and its line-range
javaMlcBlock, javaDocBlock);
while(filteredItr.hasNext()) {
System.out.println(filteredItr.next());
}
}
}
輸出(輸入文件是在此答案形柱的底部):
<P>The main class JavaDoc block.</P>
<P>Constructor JavaDoc block</P>
* <P>Function JavaDoc block.</P>
* <P>This function does some stuff.</P>
* <P>Lots and lots of stuff.</P>
爲了從每條線剝去可選星號,包括前述任一項的空白,添加一個「中線alterer 「來的JavaDoc塊實體:
TextLineAlterer asteriskStripper = NewTextLineAltererFor.replacement(
Pattern.compile("[ \t]*(?:\\*[ \t]*)?(.*)"), "$1",
ReplacedInEachInput.FIRST,
null, //debug
null);
通過改變keepMidsOnly().build();
到
midAlter(asteriskStripper).keepMidsOnly().build();
輸出:
<P>The main class JavaDoc block.</P>
<P>Constructor JavaDoc block</P>
<P>Function JavaDoc block.</P>
<P>This function does some stuff.</P>
<P>Lots and lots of stuff.</P>
輸入文件:
/*
A Java comment block.
*/
package fully.qualified.package.name;
/**
<P>The main class JavaDoc block.</P>
*/
public class StayClassy {
/**
<P>Constructor JavaDoc block</P>
*/
public StayClassy() {
//Do stuff
}
/**
* <P>Function JavaDoc block.</P>
* <P>This function does some stuff.</P>
* <P>Lots and lots of stuff.</P>
*/
public void doStuff() {
}
}
相關問題
- 1. 從源文件中提取Bash函數註釋
- 2. 從Java源文件獲取類註釋
- 3. 如何從C文件中提取代碼註釋?
- 4. 如何引用Javadoc中的註釋?
- 5. Gate - 從註釋集中提取單個註釋文本
- 6. Javadoc doclet:獲取「@Nullable」註釋(javax)。如何在doclet中獲得該註釋?
- 7. 從javascript文件中提取所有文檔塊註釋
- 8. 從R源文件中提取註釋,保留它們發生的功能
- 9. 從xml中從GATE提取註釋
- 10. 從.resx文件中的資源讀取鍵值,值和註釋
- 11. 如何讀取java類中的javadoc註釋?
- 12. 無法使用註釋從.properties文件中提取值
- 13. 如何使用perl從文件中搜索和提取註釋行?
- 14. 如何從PDF文件中提取註釋和突出顯示的部分
- 15. 從bean/class中提取註釋參數
- 16. 從wordpress函數中提取註釋url
- 17. 用於「複製」文檔的Javadoc註釋
- 18. Java註釋強制寫javadoc
- 19. 註釋補全javadoc標籤
- 20. 通過註釋過濾javadoc
- 21. 如何讀取註釋文件?
- 22. 如何從.jar文件中的源代碼構建javadoc?
- 23. Android:如何提供AIDL文件作爲javadoc的源代碼?
- 24. 提取PDF註釋
- 25. 如何使用RegEx從文件獲取文檔註釋?
- 26. 使用Java API從HTML文件本地提取DBpedia Spotlight註釋
- 27. 如何從對話中提取揚聲器註釋?
- 28. 從SFS文件中提取資源
- 29. 避免JavaDoc註釋中的重複
- 30. 在Eclipse中自動生成Javadoc註釋?
號的OP在談論的不僅僅是改變了樣式的更多。 –
thx爲簡單命令 –