最简单的站点,首先配置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/
相关推荐
chromedriver-linux64-V124.0.6367.91稳定版
在官方的基础上改了检测头、导出onnx(适配tensorrt pro 项目)、测试demo等代码。 能够使用清华V2X数据集进行训练和测试。 https://www.bilibili.com/video/BV1Wd4y1G78M/?vd_source=0223c707743ff3013adaeff54aee3506 数据集来源:https://thudair.baai.ac.cn/index 基于Yolov7 tiny,加入了距离回归 模型没收敛完,随便试了下,所以预测有抖动 使用TRT加速,在AGX Xavier上推理大约4ms V2X使用tools/convertlabel2yolo.ipynb 进行数据集转换
基于STM32F101单片机设计Bluetooth Sentinel 主板硬件(原理图+PCB)工程文件,仅供学习设计参考。
【前端热门框架【vue框架】】——条件渲染和列表渲染的学习的秒杀方式 (2)
liba2ps1-4.14-bp155.4.9.aarch64
1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
基于嵌入式
基于matlab实现关于语音信号声源定位DOA估计所用的一些传统算法.rar
sdk.config
海康威视DS-K1T342M人脸识别门禁机升级固件
2024-2030全球与中国太阳能发电机市场现状及未来发展趋势
毕业设计:基于springboot的中小企业财务管理系统(源码 + 数据库 + 说明文档) 2 开发技术简介 6 2.1 基于B/S结构开发 6 2.2 jsp语言简介 6 2.3MYSQL简介 6 2.4 eclipse工具 7 3 需求分析 7 3.1 可行性分析 7 3.1.1 经济可行性 7 3.1.2 技术可行性 7 3.1.3 操作可行性 7 3.2 功能需求分析 8 3.3 非功能需求分析 8 4 系统设计 9 4.1 数据库设计 9 4.2 系统模块总体设计 10 5 系统详细设计 10 5.1 后台登录页面 10 5.2 管理员信息 11 5.3 财务人员信息 11 5.4 资产负债 12 5.5 税收管理 12 6 系统测试 13 6.1 测试的目的 13 6.2 测试的方法 13 6.3 测试的重要性 14 6.4 测试内容 14 6.5 测试结果 14
python tkinter-08-盒子模型.ev4.rar
HAL 驱动库和 LL 驱动库函数说明 介绍各个函数的使用方法 包含HAL库和LL库 这个官网是PDF格式的 体积巨大 这个 WORD 格式的体积小巧 介绍 HAL 驱动库已经实现了适用于 PY32F0xx 系列芯片的一整套 APIs,这些 APIs 能够使应用程序与底层硬 件之间的交互更加简单、方便。 在 HAL 驱动库中用户能够调用的 APIs 可以分为两类:通用 APIs 和扩展 APIs。通用 APIs 为所有 PY32F0xx 系列芯片提供通用功能的驱动。扩展 APIs 则根据不同型号提供扩展功能的 APIs。 HAL 驱动库并不是基于 IP 所构建的,而是基于外设的特性和功能实现的。例如,USART 拥有 UART 和 USART 两种功能,每种功能都拥有一组独立的驱动程序来支持,并且它们的驱动程序是相互分离的。 HAL 驱动库函数的入口处均有断言函数,断言函数用来校验输入参数是否合法。这种校验方式提高了驱 动程序的健壮性。用户也可以使用断言函数来进行编写和调试应用程序。 HAL 驱动库提供的 APIs 均具有很高的可移植性,并且它们对用户屏蔽了 MCU 和底层硬
2024年全球电大提琴行业总体规模、主要企业国内外市场占有率及排名
Bug Bounty Tip - i春秋Self-XSS变废为宝的奇思妙想 i春秋技术分享,将self-xss利用扩大化,奇思妙想可以借鉴。
基于matlab实现基于复杂网络的囚徒困境博弈matlab源程序,基于方形格子或无标度网络。.rar
SOT23;P—Channel沟道,-30V;-5.6A;RDS(ON)=47mΩ@VGS=10V,VGS=20V;Vth=-1V;
三相半波可控整流电路是一种将三相交流电转换为直流电的电路,其原理是利用三相交流电源产生的三个交流电信号,经过一系列电子元件的控制和变换,将交流电转换为直流电输出。在整流过程中,通过控制晶闸管的导通和关断来实现整流。 在三相半波整流电路中,首先将三相交流电源的三个相电压分别经过三个二极管进行整流,实现三相交流电转换为半波直流电信号。然后,通过一个滤波电容器对半波直流电进行滤波,消除整流后的脉动成分,得到平稳的直流输出电压。与单相半波电路和单相全波电路相比,三相半波可控整流电路具有一些明显的优点: 输出电压波动小:由于三相电源的输出具有周期性,整流后输出的电流具有连续性,因此输出电压的波动较小。整流效率高:三相半波整流电路可以对三相信号进行整流,同时避免了负载端电流的波动,因此整流效率更高。
如何在 Ubuntu 16.04 上使用 Node-RED 连接你的物联网设备