最简单的站点,首先配置maven3的maven-site-plugin,这个在外层的parent的pom.xml中定义:
<build> <pluginManagement> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-site-plugin</artifactId> <version>3.2</version> </plugin> </plugins> </pluginManagement> </build>
注意,可以写在pluginManagement中,然后运行:mvn site即可
>> 项目报告插件:JavaDocs:
<project> ... <reporting> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> <version>2.8.1</version> <configuration> <encoding>UTF-8</encoding> </configuration> </plugin> </plugins> </reporting> ... </project>
运行:mvn site后就能看到JavaDoc了。
>> 源码插件:Source Xref
如果能随时随地打开浏览器访问项目的最新源代码,那就无敌了。额,maven-jxr-plugin貌似能帮我们完成这个心愿:
<reporting> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jxr-plugin</artifactId> <version>2.3</version> <configuration> <aggregate>true</aggregate> <encoding>UTF-8</encoding> </configuration> </plugin> </plugins> </reporting>
>> 代码规范插件:CheckStyle
CheckStyle用来帮助Java开发人员规范编码,而且可以自定义自己的一套编码规范,通过maven-checkstyle-plugin集成起来:
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-checkstyle-plugin</artifactId> <version>2.9.1</version> <configuration> <configLocation>config/sun_checks.xml</configLocation> <!--<configLocation>config/maven_checks.xml</configLocation>--> <!--<configLocation>config/turbine_checks.xml</configLocation>--> <!--<configLocation>config/avalon_checks.xml</configLocation>--> </configuration> </plugin>
默认的就是sun_checks.xml,另外还有三个备选方案,而且用户可以自己定义自己的checks.xml编码规范。
>> 源码分析工具 PMD:
PMD是一款强大的Java源代码分析工具,它能够寻找代码中的问题,包括潜在的bug、无用代码、可优化代码、重复代码以及过于复杂的表达式。
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-pmd-plugin</artifactId> <version>2.7.1</version> <configuration> <rulesets> <ruleset>rulesets/basic.xml</ruleset> <ruleset>rulesets/unusedcode.xml</ruleset> <ruleset>rulesets/importss.xml</ruleset> <ruleset>rulesets/braces.xml</ruleset> <ruleset>rulesets/naming.xml</ruleset> <ruleset>rulesets/strings.xml</ruleset> </rulesets> <aggregate>true</aggregate> </configuration> </plugin>
>> 版本控制报告:ChangeLog
maven-changelog-plugin能够基于版本控制系统中就近的变更记录生成三分变更报告:
* Change Log:基于提交的变更报告,包括每次提交的日期、文件、作者、注释等
* Developer Activity:基于作者的变更报告,包括作者列表以及每个作者相关的提交次数和涉及文件数目。
* File Activity:基于文件的变更报告,包括变更的文件列表以及每个文件的变更次数。
要想使用ChangeLog插件,必须先定义好SCM信息:
<scm> <connection>scm:svn:http://192.168.1.103/app/trunk</connection> <developerConnection>scm:svn:https://192.168.1.103/app/trunk</developerConnection> <url>http://192.168.1.103/account/trunk</url> </scm>
有了scm信息,开始配置maven-changelog-plugin了:
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-changelog-plugin</artifactId> <version>2.2</version> <configuration> <type>range</type> <range>60</range> </configuration> </plugin>
>> 测试覆盖率插件:Cobertura
前面介绍过用Cobertura生成测试覆盖率报告,现在介绍如何将其集成到项目站点中去。
<plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>cobertura-maven-plugin</artifactId> <version>2.5.2</version> </plugin>
>> 国际化配置:
先确保项目所有的源码,包括pom.xml、site.xml以及apt文档等等都是UTF-8编码
<properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> </properties>
然后配置locales为zh_CN,这个是为了国际化显示用,比如货币、日期、数字等显示成符合zh的格式:
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-site-plugin</artifactId> <version>3.2</version> <configuration> <locales>zh_CN</locales> </configuration> </plugin>
>> 部署站点:
maven支持多种协议部署站点,包括FTP、SCP、DAV
<distributionManagement> <site> <id>app-site</id> <url>dav:https://www.springzoo.com/sites/app</url> </site> </distributionManagement>
服务器必须支持WEBDAV,为了确保安全,服务器需要认证,而这个认证就是修改.m2/settings.xml文件:
<settings> ... <server> <id>app-site</id> <username>test</username> <password>*****</password> </server> </settings>
如果想使用FTP协议部署站点,而且个人推荐这种方法,除了配置正确的部署地址和认证信息外,还要配置额外的扩展组件wagon-ftp:
<build> ... <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-site-plugin</artifactId> <version>3.2</version> <configuration> <locales>zh_CN</locales> </configuration> </plugin> </plugins> <extensions> <extension> <groupId>org.apache.maven.wagon</groupId> <artifactId>wagon-ftp</artifactId> <version>2.3</version> </extension> </extensions> </build> <distributionManagement> <site> <id>app-site</id> <url>ftp://www.springzoo.com/sites/app</url> </site> </distributionManagement>
同样也是要跟上面一样在settings.xml文件中配置FTP登陆的认证信息。
所有配置好以后,只要一句话即可部署整个项目站点了:
# mvn clean site-deploy
本人博客已搬家,新地址为:http://www.pycoding.com/
相关推荐
Maven更新问题 今天Maven在更新的时候发现一直更新不成功,总结下解决方法。 在apache-maven-3.5.2/conf/setting.xml中加入以下配置即可解决 alimaven aliyun maven ...
Failed to execute goal org.apache.maven.plugins:maven-clean-plugin:2.5:clean (default-clean) on project
idea创建Maven项目时,报错显示Failed to execute goal org.apache.maven.plugins:maven-resources-plugin:3.0.2:resources,并且Maven插件内看不到 mybatis-generator。如下图: 折腾了好久发现配置放错地方了,...
maven搭建项目:springmvc+hibernate
使用eclipse整合maven时所需要使用的配置文件;只需修改文件中的本地仓库路径即可完成整合,java初学者必选。
自定义Maven插件:根据配置的数据库信息,生成对应的Java实体类文件,并自动生成备注、长度、是否为空等的doc注释。也可以根据已有的实体类,在数据库生成对应的库表。
Task4Maven_Invoker 在这个项目中,我尝试调用 resource:resource 目标来复制文件 A 和 B(不进行过滤)。 如果我调用资源:资源,它工作正常,但是当我尝试调用迭代器插件 - 迭代器:调用我得到错误: 无法在项目 ...
Maven3实战笔记,介绍maven构建项目的步骤以及相关内容
自己实现的自定义maven插件:可以根据配置的接口类和参数类,生成对应的word版本的API文档。还可以自定义自己的模板文件。
许可证Maven插件 这是 。 发行 确保gpg-agent正在运行。 执行mvn -B release:prepare release:perform 要发布站点,请执行以下操作: cd target/checkout mvn verify site -DperformRelease scm-publish:publish-...
2021-10-28官网下载archetype-catalog.xml。(maven项目快速搭建,缺少这个文件时,提示maven-archetype-webapp could not resolve archetpye)
swagger-codegen-maven-plugin [![Maven版本] [maven-img]] [maven-url] 一个Maven插件来支持代码生成项目用法添加到您的build->plugins部分(默认阶段是generate-sources阶段) < plugin> < groupId>...
Maven Enforcer插件-Maven:trade_mark:的爱铁拳 Enforcer插件提供了控制某些环境约束的目标,例如Maven版本,JDK版本和OS系列以及更多内置规则和用户创建的规则。 文献资料 可以在上找到更多信息。 与Maven ...
首先去官网下载 Maven:http://www.apache.org/dyn/closer.cgi/maven/binaries/apache-maven-3.0.4-bin.tar.gz 下载完成之后将其解压,我将解压后的文件夹重命名成 maven,并将它放在 D:\Server 目录下,即 maven...
Maven3实战笔记04——Maven的生命周期和插件。
Maven的例子 :party_popper: 一个用于测试和试验各种Maven插件和配置的游乐场。 外挂程式 :electric_plug: Maven插件 项目 描述 网站 ...原型以生成示例Maven项目 Maven原型快速入门 允许生成示例Mav
ImpSort Maven插件在以下位置查看此插件的文档: : 整理您的展示次数! 一个Maven插件,用于对Java源文件中的import语句进行排序。 该插件将用于其自己的版本。 它的公共API是目标和配置选项的名称。
Maven使用tomcat8-maven-plugin插件
解决tomcat8-maven-plugin-3.0-r1655215.jar阿里云同有的问题。放到路径org\apache\tomcat\maven\tomcat8-maven-plugin\3.0-r1655215\就可以了
使用maven-archetype-quickstart生成的示例Maven项目 要在您的Maven构建中使用它,请添加: < id>jitpack.io < url>https://jitpack.io</ url> 和依赖性: < groupId>...