使用maven2的另外一個(gè)好處,就是有了統一的入口,用于察看項目的進(jìn)展情況。這主要包括了項目的介紹,成員介紹,以及相關(guān)的項目的文檔,當然也包括項目的所有進(jìn)展報表。
下面,通過(guò)實(shí)例來(lái)介紹如何配置maven,來(lái)產(chǎn)生項目站點(diǎn)。
首先創(chuàng )建相關(guān)的site
mvn archetype:create \
-DarchetypeGroupId=org.apache.maven.archetypes \
-DarchetypeArtifactId=maven-archetype-site \
-DgroupId=com.mycompany.app \
-DartifactId=my-app-site
你會(huì )看到如下的目錄:
my-app-site
|-- pom.xml
`-- src
`-- site
|-- apt
| |-- format.apt
| `-- index.apt
|-- fml
| `-- faq.fml
|-- fr
| |-- apt
| | |-- format.apt
| | `-- index.apt
| |-- fml
| | `-- faq.fml
| `-- xdoc
| `-- xdoc.xml
|-- xdoc
| `-- xdoc.xml
|-- site.xml
`-- site_fr.xml
當然也可以不用通過(guò)此來(lái)生成站點(diǎn),直接在原有的src目錄中增加site目錄就行。當然,為了簡(jiǎn)化操作,一般先生成相應的site目錄,然后拷貝到相應的src目錄中。
修改pom文件
增加以下內容
<!-- 配置發(fā)布站點(diǎn)url -->
<distributionManagement>
<site>
<id>website</id>
<url>scp://webhost.company.com/www/website</url>
</site>
</distributionManagement>
<build>
<plugins>
<!-- 配置site 的國際化,默認為en,fr,更改為zh_CN,以及設置編碼格式,默認utf-8 -->
<plugin>
<artifactId>maven-site-plugin</artifactId>
<configuration>
<locales>zh_CN</locales>
<outputEncoding>GBK</outputEncoding>
</configuration>
</plugin>
</plugins>
</build>
在site 目錄下,最重要的就是site.xml文件了
site.xml描述了主要的site布局,例子如下:
<?xml version="1.0" encoding="ISO-8859-1"?>
<project name="Maven">
<!-- left banner-->
<bannerLeft>
<name>Maven</name>
<src>http://maven.apache.org/images/apache-maven-project.png</src>
<href>http://maven.apache.org/</href>
</bannerLeft>
<!-- right banner-->
<bannerRight>
<src>http://maven.apache.org/images/maven-small.gif</src>
</bannerRight>
<body>
<!-- 默認的link -->
<links>
<item name="Apache" />
<item name="Maven 1.0" />
<item name="Maven 2" />
</links>
<!-- 菜單項 -->
<menu name="Maven 2.0">
<item name="Introduction" href="index.html"/>
<item name="Download" href="download.html"/>
<item name="Release Notes" href="release-notes.html" />
<item name="General Information" href="about.html"/>
<item name="For Maven 1.0 Users" href="maven1.html"/>
<item name="Road Map" href="roadmap.html" />
</menu>
<menu ref="reports" />
...
</body>
</project>
配置站點(diǎn)文件
maven 支持以下的文檔:
xdoc格式,使用簡(jiǎn)單的xml格式
apt格式,like wiki格式的純文本
fml格式, faq格式
docBook
一般采用apt文件,默認的apt都是iso-8859-1的,如果需要支持中文,需要使用native2ascii命令來(lái)轉換。
報表:
站點(diǎn)主要的配置,目前不錯的報表插件,包括javadoc,pmd,checkstyle,Surefire test,source xref,tag list等。
下面詳細介紹這些報表:
javadoc,對于團隊內部來(lái)說(shuō),javadoc是比較重要的,當然前提是能好好的寫(xiě)javadoc。
配置如下:在reporting中增加如下的插件
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<configuration>
<links>
<link>http://java.sun.com/j2se/1.4.2/docs/api</link>
<link>http://plexus.codehaus.org/ref/1.0-alpha-9/apidocs</link>
</links>
<aggregate>true</aggregate>
</configuration>
</plugin>
pmd,一個(gè)不錯的代碼檢查工具。
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-pmd-plugin</artifactId>
<configuration>
<rulesets>
<ruleset>/rulesets/basic.xml</ruleset>
<ruleset>/rulesets/imports.xml</ruleset>
<ruleset>/rulesets/unusedcode.xml</ruleset>
<ruleset>/rulesets/finalizers.xml</ruleset>
<ruleset>/rulesets/controversial.xml</ruleset>
<ruleset>/rulesets/strings.xml</ruleset>
<ruleset>/rulesets/strictexception.xml</ruleset>
<ruleset>/rulesets/optimizations.xml</ruleset>
<ruleset>/rulesets/naming.xml</ruleset>
</rulesets>
<linkXref>true</linkXref>
<sourceEncoding>GBK</sourceEncoding>
<minimumTokens>100</minimumTokens>
<!--支持jdk 1.5 -->
<targetJdk>1.5</targetJdk>
</configuration>
</plugin>
checkstyle,主要的代碼格式工具,和pmd相比,更注重代碼的格式。
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<configuration>
<configLocation>sun_checks.xml</configLocation>
</configuration>
</plugin>
Surefire test,單元測試結果報表
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-report-plugin</artifactId>
</plugin>
source xref,在網(wǎng)站上直接察看java源代碼
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jxr-plugin</artifactId>
</plugin>
tag list,用于查找在代碼中預定義的標簽,如todo
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>taglist-maven-plugin</artifactId>
<configuration>
<tags>
<tag>TODO</tag>
<tag>@todo</tag>
<tag>FIXME</tag>
</tags>
</configuration>
</plugin>
基本的站點(diǎn)已經(jīng)成型了,下面就是生成了。
執行mvn site 生成目錄,或者直接執行 mvn site-deploy 發(fā)布站點(diǎn)
本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請
點(diǎn)擊舉報。