2013-04-23 53 views
1

我擁有一個包含大量文件的Java項目。在其中的一些中,我在類/接口聲明之前插入了一個JavaDoc @author標記,但不是全部。我想要一個腳本(bash,perl,不管)能夠在正確的位置添加@author標籤(就在類聲明之前),所有文件都沒有。何找到正確的路線在何處添加此的javadoc?:將JavaDoc @author標記添加到我的項目中的每個java文件

/* 
* @author alepac 
*/ 
+0

我建議喜歡在這裏討論沒有這個標籤完全做到:http://stackoverflow.com/questions/17269843/javadoc-author-tag-good-practices/17271433#17271433 – 2015-04-08 07:15:58

回答

0

你可以用下面的腳本嘗試,

#!/bin/bash 

function proccess_all_files { 
FILES="./*" 
cd "$1" 
for i in $FILES 
do 
if [[ -d "$i" ]]; then 
echo "Directory $i found...no action taken" 
else 
echo "Processing $i file..." 
sed '/* 
* @author alepac 
*/' $i > $i.bak 
mv "$i.bak" "$i" 
fi 
done 
for j in * .[!.]* ..?*; do 
cd "$1" 
test -d "$1/$j" && proccess_all_files "$1/$j" 
done 
} 

proccess_all_files "`DIRECTORY NAME`" 

讓我知道它是否幫助你或沒有,或者這是否是完全你在找什麼或不是。

希望它有幫助。

+0

我不是一個sed guru,但它通常用於模式替換而不是串聯(我通常使用cat),但我不明白你的語法。此外,如上所述,我不想在javadocs指定的類/接口聲明之前將javadoc插入到文件的地形中。 – Alepac 2013-04-23 12:48:12

+0

如果不使用'sed',我想你需要使用一些編輯器來爲你編寫.bak文件。我剛剛爲我的同一個問題準備了這個腳本。但是,仍然值得分享,至少會給你一些關於它如何完成的想法..對不起,如果它沒有幫助... – 2013-04-23 12:53:17

0

沒有劇本的,但如果你的Java項目正好與Maven建成,那麼你可以使用javadoc:fix目標Javadoc plugin您可以進行配置,以便讓它能夠插入@author標籤無論它的缺失,包括不存在的javadoc的情況下,所有:

<plugin> 
    <artifactId>maven-javadoc-plugin</artifactId> 
    <groupId>org.apache.maven.plugins</groupId> 
    <version>2.10.3</version> 
    <configuration> 
     <fixTags>author</fixTags> 
     <force>true</force> 
     <fixFieldComment>false</fixFieldComment> 
     <fixMethodComment>false</fixMethodComment> 
    </configuration> 
</plugin> 
相關問題