`
zyl
  • 浏览: 487475 次
社区版块
存档分类
最新评论

maven2 建立统一的管理站点

    博客分类:
  • pm
阅读更多
    使用maven2的另外一个好处,就是有了统一的入口,用于察看项目的进展情况。这主要包括了项目的介绍,成员介绍,以及相关的项目的文档,当然也包括项目的所有进展报表。
    下面,通过实例来介绍如何配置maven,来产生项目站点。
    首先创建相关的site
mvn archetype:create \
      -DarchetypeGroupId=org.apache.maven.archetypes \
      -DarchetypeArtifactId=maven-archetype-site \
      -DgroupId=com.mycompany.app \
     -DartifactId=my-app-site
  你会看到如下的目录:
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
    当然也可以不用通过此来生成站点,直接在原有的src目录中增加site目录就行。当然,为了简化操作,一般先生成相应的site目录,然后拷贝到相应的src目录中。
修改pom文件
增加以下内容
       
xml 代码
 
  1. <!-- 配置发布站点url -->  
  2.            <distributionManagement>  
  3.                  <site>  
  4.                    <id>website</id>  
  5.                    <url>scp://webhost.company.com/www/website</url>  
  6.               </site>  
  7.            </distributionManagement>  
  8.            <build>  
  9.               <plugins>  
  10.            <!-- 配置site 的国际化,默认为en,fr,更改为zh_CN,以及设置编码格式,默认utf-8 -->  
  11.               <plugin>  
  12.                  <artifactId>maven-site-plugin</artifactId>  
  13.                 <configuration>  
  14.                     <locales>zh_CN</locales>  
  15.                     <outputEncoding>GBK</outputEncoding>  
  16.                     </configuration>  
  17.                   </plugin>  
  18.              </plugins>  
  19.           </build>  

在site 目录下,最重要的就是site.xml文件了
site.xml描述了主要的site布局,例子如下:
xml 代码
 
  1. <?xml version="1.0" encoding="ISO-8859-1"?>  
  2. <project name="Maven">  
  3.   <!-- left banner-->  
  4.   <bannerLeft>  
  5.     <name>Maven</name>  
  6.     <src>http://maven.apache.org/images/apache-maven-project.png</src>  
  7.     <href>http://maven.apache.org/</href>  
  8.   </bannerLeft>  
  9.   <!-- right banner-->  
  10.   <bannerRight>  
  11.     <src>http://maven.apache.org/images/maven-small.gif</src>  
  12.   </bannerRight>  
  13.   <body>  
  14.     <!-- 默认的link -->  
  15.     <links>  
  16.       <item name="Apache" href="http://www.apache.org/" />  
  17.       <item name="Maven 1.0" href="http://maven.apache.org/"/>  
  18.       <item name="Maven 2" href="http://maven.apache.org/maven2/"/>  
  19.     </links>  
  20.    <!-- 菜单项 -->  
  21.     <menu name="Maven 2.0">  
  22.       <item name="Introduction" href="index.html"/>  
  23.       <item name="Download" href="download.html"/>  
  24.       <item name="Release Notes" href="release-notes.html" />  
  25.       <item name="General Information" href="about.html"/>  
  26.       <item name="For Maven 1.0 Users" href="maven1.html"/>  
  27.       <item name="Road Map" href="roadmap.html" />  
  28.     </menu>  
  29.     <menu ref="reports" />  
  30.     ...  
  31.   </body>  
  32. </project>  


配置站点文件
maven 支持以下的文档:
xdoc格式,使用简单的xml格式
apt格式,like wiki格式的纯文本
fml格式, faq格式
docBook
一般采用apt文件,默认的apt都是iso-8859-1的,如果需要支持中文,需要使用native2ascii命令来转换。

报表:
站点主要的配置,目前不错的报表插件,包括javadoc,pmd,checkstyle,Surefire test,source xref,tag list等。
下面详细介绍这些报表:
javadoc,对于团队内部来说,javadoc是比较重要的,当然前提是能好好的写javadoc。
配置如下:在reporting中增加如下的插件

     
xml 代码
 
  1. <plugin>  
  2.         <groupId>org.apache.maven.plugins</groupId>  
  3.         <artifactId>maven-javadoc-plugin</artifactId>  
  4.         <configuration>  
  5.           <links>  
  6.             <link>http://java.sun.com/j2se/1.4.2/docs/api</link>  
  7.             <link>http://plexus.codehaus.org/ref/1.0-alpha-9/apidocs</link>  
  8.           </links>  
  9.           <aggregate>true</aggregate>  
  10.         </configuration>  
  11.       </plugin>  

pmd,一个不错的代码检查工具。
    
xml 代码
 
  1. <plugin>  
  2.         <groupId>org.apache.maven.plugins</groupId>  
  3.         <artifactId>maven-pmd-plugin</artifactId>  
  4.         <configuration>  
  5.           <rulesets>  
  6.             <ruleset>/rulesets/basic.xml</ruleset>  
  7.             <ruleset>/rulesets/imports.xml</ruleset>  
  8.             <ruleset>/rulesets/unusedcode.xml</ruleset>  
  9.             <ruleset>/rulesets/finalizers.xml</ruleset>  
  10.             <ruleset>/rulesets/controversial.xml</ruleset>  
  11.             <ruleset>/rulesets/strings.xml</ruleset>  
  12.             <ruleset>/rulesets/strictexception.xml</ruleset>  
  13.             <ruleset>/rulesets/optimizations.xml</ruleset>  
  14.             <ruleset>/rulesets/naming.xml</ruleset>  
  15.           </rulesets>  
  16.           <linkXref>true</linkXref>  
  17.           <sourceEncoding>GBK</sourceEncoding>  
  18.           <minimumTokens>100</minimumTokens>  
  19.           <!--支持jdk 1.5 -->  
  20.           <targetJdk>1.5</targetJdk>  
  21.         </configuration>  
  22.       </plugin>  


checkstyle,主要的代码格式工具,和pmd相比,更注重代码的格式。
     
xml 代码
 
  1. <plugin>  
  2.         <groupId>org.apache.maven.plugins</groupId>  
  3.         <artifactId>maven-checkstyle-plugin</artifactId>  
  4.         <configuration>  
  5.           <configLocation>sun_checks.xml</configLocation>  
  6.         </configuration>  
  7.       </plugin>  


Surefire test,单元测试结果报表
  
xml 代码
 
  1. <plugin>  
  2.      <groupId>org.apache.maven.plugins</groupId>  
  3.      <artifactId>maven-surefire-report-plugin</artifactId>  
  4.    </plugin>  


source xref,在网站上直接察看java源代码

    
xml 代码
 
  1. <plugin>  
  2.         <groupId>org.apache.maven.plugins</groupId>  
  3.         <artifactId>maven-jxr-plugin</artifactId>  
  4.       </plugin>  

tag list,用于查找在代码中预定义的标签,如todo
    
xml 代码
 
  1. <plugin>  
  2.         <groupId>org.codehaus.mojo</groupId>  
  3.         <artifactId>taglist-maven-plugin</artifactId>  
  4.         <configuration>  
  5.           <tags>  
  6.             <tag>TODO</tag>  
  7.             <tag>@todo</tag>  
  8.             <tag>FIXME</tag>  
  9.           </tags>  
  10.         </configuration>  
  11.       </plugin>  


基本的站点已经成型了,下面就是生成了。
执行mvn site 生成目录,或者直接执行 mvn site-deploy 发布站点
分享到:
评论
1 楼 lsy 2007-05-10  
好帖。多谢楼主介绍的这些plugin

相关推荐

    Maven学习笔记

    Apache Maven是一种项目管理和综合工具,主要服务于Java平台的项目,它对项目构建、报告和文档化的过程进行了简化。Maven使用一个名为POM(Project Object Model)的XML文件来管理项目的构建过程。其核心功能包括...

    Maven权威指南中文版(完整)

    - **一般接口**:Maven提供了一个统一的构建生命周期,支持自动化完成各种任务。 - **基于插件的全局性重用**:Maven的核心功能通过插件实现,这些插件可以被所有项目共享和重用。 - **项目概念模型**:Maven将项目...

    Maven集成包

    2. **依赖管理**:在POM中,开发者可以声明项目所依赖的库,Maven会自动下载这些库并管理它们,避免了版本冲突问题。Maven仓库(如Central Repository)提供了大量的开源组件供开发者使用。 3. **插件系统**:Maven...

    Maven+JIRA环境安装与Eclipse 集成代码质量监控环境搭建

    Maven的主要优势在于其标准化的构建生命周期和依赖管理机制,这使得开发者可以更加专注于业务逻辑而非构建过程。 **Maven下载和运行** Maven可以从官方网站下载最新的稳定版本。通常下载的是一个压缩包,将其解压...

    maven的介绍.docx

    - **下载并安装Maven**:从官方站点下载Maven安装包,解压缩至指定目录。 - **配置环境变量**:设置MAVEN_HOME环境变量指向Maven的安装路径,并将Maven的bin目录加入系统PATH环境变量。 - **验证安装**:通过执行`...

    Maven基础教程

    2. 依赖管理:Maven通过POM文件中的标签管理项目所需的各种库。它自动下载并管理这些库,避免了版本冲突问题。 3. 仓库:Maven使用本地仓库存储已下载的依赖,同时与中央Maven仓库...

    Maven 生命周期.pdf

    Maven是一种流行的Java项目管理工具...通过定义这些阶段,Maven使开发者能够以一种统一和标准化的方式管理构建过程。与此同时,Maven的插件机制提供了灵活性和扩展性,让开发者可以根据项目的具体需求来调整构建过程。

    Maven安装与配置教程.docx

    Apache Maven是一款强大的Java项目管理和构建自动化工具,它通过提供统一的构建过程、依赖管理和项目信息等特性,简化了项目的构建和管理流程。对于Java开发者来说,掌握Maven的安装与配置是必不可少的技能。 #### ...

    apache-maven-3.6.3.zip

    2. **依赖管理**:Maven通过中央仓库自动解决项目依赖,避免了手动下载和管理JAR文件的麻烦。在POM中声明依赖后,Maven会自动下载这些依赖及其传递性依赖,并按照指定的范围(compile、test、runtime等)进行管理。 ...

    基于Java构建的Web站点开发组件集。目标是当需要构建Java Web项目时可以专注.zip

    【标题】中的“基于Java构建的Web站点开发组件集”指的是使用Java技术栈来开发Web应用程序的一...通过这样的组件集,开发者可以快速地建立一个功能完备的Java Web站点,提高开发效率,同时保持代码的整洁和结构良好。

    word源码java-karma-Jasmine-:业力-茉莉-

    Jasmine做单元测试,Karma自动化完成单元测试,Grunt启动Karma统一项目管理,Yeoman最后封装成一个项目原型模板,npm做nodejs的包依赖管理,bower做javascript的包依赖管理。Java领域:JUnit做单元测试, Maven自动化...

    Apache Spark源码读解

    - **Maven关联源码**: 使用Maven项目时可以通过添加依赖的方式关联到Spark源码,但这种方式无法对源码进行修改。 - **GitHub下载**: 通过GitHub获取Spark的源代码仓库,这种方式更方便进行版本控制和修改。 #### ...

    findBug eclipse

    2. 在“Work with”下拉框中输入FindBugs的更新站点地址,或者直接导入给定的ZIP文件。 3. 搜索并选择“edu.umd.cs.findbugs.plugin.eclipse”,确认插件版本与当前Eclipse版本兼容。 4. 完成安装过程,重启Eclipse...

Global site tag (gtag.js) - Google Analytics