Maven生成项目站点
概述
Maven不仅仅是一个自动化构建工具和一个依赖工具,还能够帮助聚合项目信息。POM可以包含各种项目信息、如项目描述、版本控制系统地址、缺陷跟踪系统地址、许可证信息、开发者信息等。
另Maven社区提供了大量插件,能让用户生成各种各样的项目审查报告,包括测试覆盖率、静态代码分析、代码变更等。
生成站点
对maven2来说,站点生成的逻辑是Maven核心的一部分。对Maven3来说,这部分逻辑已经从核心中移除,需要使用3.x版本的maven-site-plugin
maven3生成站点示例
<pluginManagement>
<plugins>
<plugn>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-site-plugin</artifactId>
<version>3.0-beta-1</version>
</plugn>
</plugins>
</pluginManagement>
maven2生成站点示例
<pluginManagement>
<plugins>
<plugn>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-site-plugin</artifactId>
<version>2.1.1</version>
</plugn>
</plugins>
</pluginManagement>
配置完成后,运行mvn site就能直接生成一个最简单的站点。
站点的可配置信息
- 关于(about):项目描述
- 持续集成(continuous integration):项目持续集成服务信息
- 依赖(dependencies):项目的依赖信息,包括传递性依赖、依赖图、依赖许可证以及依赖文件的大小、所包含的类数目,此内容可以使用插件maven-dependency-site生成
- 依赖收敛(dependency convergence):只针对多模块项目生成,提供一些依赖健康状况分析,如各个模块使用的依赖版本是否一致、项目中是否有SNAPSHOT依赖
- 依赖管理(dependency management):基于项目的依赖管理配置生成的报告
- 问题追踪(issue tracking):项目的问题追踪系统信息
- 邮件列表(mailing lists):项目的邮件列表
- 插件管理(plugin management):项目所使用插件的列表
- 项目许可证(project license):项目许可证
- 项目概述(project summary):项目概述包括坐标、名称、描述等
- 项目团队(project team):项目团队信息
- 源码仓库(source repository):项目的源码仓库信息
另选择性的生成项目信息项,可使用插件maven-project-info-reports-plugin
<project>
...
<reporting>
<plugins>
<plugn>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-project-info-reports-plugin</artifactId>
<version>2.1.2</version>
<reportSets>
<reportSet>
<reports>
<report>dependencies</report>
<report>project-team</report>
<report>issue-tracking</report>
<report>license</report>
</reports>
</reportSet>
</reportSets>
</plugn>
</plugins>
</reporting>
...
</project>
其他项目报告插件介绍
生成项目源码JavaDocs文档
maven-javadoc-plugin
Source Xref可以随时随地打开浏览器访问项目的最新源码
maven-jxr-plugin
CheckStyle帮助Java开发遵循编码规范的工具,能根据一套规则自动检查Java代码
maven-checkstyle-plugin
PMD是一款强大的Java源代码分析工具,能够寻找代码中的问题,包括潜在的bug、无用代码、可优化代码、重复代码以及过于复杂的表达式
maven-pmd-plugin
ChangeLog基于版本控制生成三份变更报告
maven-changelog-plugin
Cobertura生成测试覆盖率报告
cobertura-maven-plugin
转自:https://blog.csdn.net/fengyunhaitan/article/details/51779749
Maven生成项目站点的更多相关文章
- 笔记:Maven 生成项目站点
Maven 不仅仅时一个自动化构建工具和一个依赖管理工具,他还能够帮助聚合项目信息,促进团队间的交流,POM 可以包含各种项目信息,如项目描述.版本控制系统地址.缺陷跟踪系统地址.许可证信息.开发者信 ...
- Maven 生成项目站点
Maven 不仅仅时一个自动化构建工具和一个依赖管理工具,他还能够帮助聚合项目信息,促进团队间的交流,POM 可以包含各种项目信息,如项目描述.版本控制系统地址.缺陷跟踪系统地址.许可证信息.开发者信 ...
- maven生成项目慢解决办法
maven生成项目慢,原因:在线更新archetype-catalog.xml文件,从Apache中央仓库. 解决办法,手动下载,放到maven环境. 备用下载地址: https://files.cn ...
- Maven生成项目文档
Maven项目可以通过maven-site-plugin插件生成项目文档,无论什么项目都可以生成. 执行命令: mvn site 生成完成的输出目录在${basedir}/target/site文件夹 ...
- 今天遇到一个怪异的问题,maven生成项目war包中有一个Jar包不是我指定的版本,运行时会找不到符号,o(╥﹏╥)o
我要求的jar包: 这是我parent项目中pom文件的依赖管理 这是我要生成war包那个工程最后依赖的jar包,这个时候它们的版本号还是一致的 最后项目生成的: 下图是Dmaven.test.ski ...
- Maven用项目模板生成项目
Archetype插件是Maven生成项目的项目模板,项目模板就是一个框,把文件夹这些定好,然后就可以在上开写具体逻辑等等. 最常用的命令: mvn archetype:generate 这个是生成一 ...
- Maven之自定义archetype生成项目骨架(一)
Maven之自定义archetype生成项目骨架(一) 标签: mavennexus插件 2015-07-15 16:40 2443人阅读 评论(0) 收藏 举报 分类: Maven技术(9) ...
- 一些基本的操作,编译,构建,单元测试,安装,网站生成和基于Maven部署项目。
一些基本的操作,编译,构建,单元测试,安装,网站生成和基于Maven部署项目. 使用Maven构建项目“mvn package” 来构建项目 使用Maven清理项目“mvn clean” 来清理项目 ...
- 利用Maven把项目生成jar包供其他项目使用
每当搭建框架时,第一步就是为系统整理一个接一个的jar包.用多了就开始深思,如何把自己的项目也整成jar包,供他人使用呢? 近期一直在看徐晓斌所著:<Maven实战>.因自己学识不够,只是 ...
随机推荐
- Jersey用户指南学习笔记1
Jersey用户指南是Jersey的官方文档, 英文原版在这:https://jersey.github.io/documentation/latest/index.html 中文翻译版在这:http ...
- 【0801 | Day 6】Python基础(四)
Part 13 流程控制之while循环 一.语法 while 条件 code 1 code 2 code 3 ... while True: print('*1'*100) print('*2' ...
- JavaWeb前端分页显示方法
在前端中我们总会遇到显示数据的问题 - 正常情况分页显示是必须的,这个时候我们不能仅仅在前端进行分页,在前端其实做起分页是很困难的,着就要求我们在后台拿数据的时候就要把分页数据准备好,在前端我们只需要 ...
- intellIJ IDEA学习笔记
如果你初次用idea,毫无目的的度娘如何使用IDEA 浪费的将会是大量的时间.为以表诚意, 上一套IDEA教学视频,以表我诚意.(下载地址:https://pan.baidu.com/s/1g ...
- leetcode bug free
---不包含jiuzhang ladders中出现过的题.如出现多个方法,则最后一个方法是最优解. 目录: 1 String 2 Two pointers 3 Array 4 DFS &&am ...
- php cmd命令行 导入 与备份
- React中控制台警告
1.dll_lib.js:1 Warning: bind(): You are binding a component method to the component. React does this ...
- 从零写一个编译器(十三):代码生成之遍历AST
项目的完整代码在 C2j-Compiler 前言 在上一篇完成对JVM指令的生成,下面就可以真正进入代码生成部分了.通常现代编译器都是先把生成IR,再经过代码优化等等,最后才编译成目标平台代码.但是时 ...
- MySQL之备份和还原
在实际项目中对于数据库的安全是重中之重,为防万一我们需要做好备份工作.备份分为全量备份和增量备份,今天我们就来实践下备份和还原操作. 一.为什么需要备份 在生产环境中数据库可能会遭遇到各种各样的不测从 ...
- 分布式配置中心Apollo——QuickStart
分布式配置中心 剥离配置文件,实现动态修改,自动更新. [假设没有分布式配置中心,修改配置文件后都需要重启服务,对于数量庞多的微服务开发来说,就会非常繁琐] 分布式配置中心有哪些 disconf(依赖 ...