Maven Plugins
2016-09-08 19:55
627 查看
maven-compiler-plugin
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.3</version> <configuration> <!--设置该参数后,使用这个jar的工程的JDK则必须是1.8+,否则编译不通过--> <!--该参数主要用于设定使用该jar包的jdk版本,比如有些jar只能在jdk8上运行编译,使用了jdk8的某些新的特性--> <source>1.8</source> <target>1.8</target> </configuration> </plugin>
maven-war-plugin
通过warSourceExcludes和packagingExcludes参数可以在打包是忽略掉指定的文件。<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-war-plugin</artifactId> <version>2.1.1</version> <configuration> <!--xxx目录位于webapp目录下--> <warSourceExcludes>xxx\**</warSourceExcludes> </configuration> </plugin>
overlay
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-war-plugin</artifactId> <version>2.6</version> <configuration> <warName>cas-server</warName> <overlays> <overlay> <groupId>org.jasig.cas</groupId> <artifactId>cas-server-webapp</artifactId> <!--排除cas-server-webapp中的文件,使用自己的配置文件--> <excludes> <exclude>WEB-INF/cas.properties</exclude> <exclude>WEB-INF/classes/log4j.xml</exclude> <exclude>WEB-INF/web.xml</exclude> </excludes> </overlay> </overlays> </configuration> </plugin>
jetty-maven-plugin
<plugin> <groupId>org.eclipse.jetty</groupId> <artifactId>jetty-maven-plugin</artifactId> <version>9.0.0.v20130308</version> <configuration> <httpConnector> <port>10011</port> </httpConnector> <webApp> <contextPath>/</contextPath> <!--该参数在使用overlay时添加,解决Duplicate fragment name ERROR问题--> <!--通常情况下不需要该配置--> <allowDuplicateFragmentNames>true</allowDuplicateFragmentNames> </webApp> <stopKey>stop</stopKey> <stopPort>10012</stopPort> </configuration> </plugin>
热部署配置
<plugin> <groupId>org.eclipse.jetty</groupId> <artifactId>jetty-maven-plugin</artifactId> <version>9.0.0.v20130308</version> <configuration> <!--热部署不需要该参数,该参数用于修改配置文件后自动重启(不清楚这参数的意义,反正热部署用不到)--> <!--<scanIntervalSeconds>10</scanIntervalSeconds>--> <httpConnector> <port>8080</port> </httpConnector> <webApp> <contextPath>/</contextPath> <!--配置该参数,修改webdefault.xml,才能修改静态文件--> <defaultsDescriptor>src/test/resources/webdefault.xml</defaultsDescriptor> </webApp> <stopKey>stop</stopKey> <stopPort>8889</stopPort> </configuration> </plugin>
webdefault.xml 存在于jar包中,复制到src/test/resources下,并修改属性useFileMappedBuffer:
\org\eclipse\jetty\jetty-webapp\9.0.0.v20130308\jetty-webapp-9.0.0.v20130308.jar\org\eclipse\jetty\webapp\webdefault.xml
把useFileMappedBuffer的值从true改为false即可:
<init-param> <param-name>useFileMappedBuffer</param-name> <param-value>false</param-value> </init-param>
热部署方法:
开发工具IDEA
使用Debug模式启动jetty, 修改java文件后,手动编译该文件即可,IDEA会显示jetty: reloaded class
手动编译的方式:
Ctrl+F9 :Make Project, 编译整个工程,用于一次修改多个java文件的情况
Ctrl+Shift+F9 :编译单个文件
注意这里使用的是jetty plugin启动的项目,如果使用外部的jetty server,或者tomcat server,应该有自动编译的选项,不需要手动编译。当然手动编译也是可以热部署的。
还有一点,这种方式不支持修改方法名或者新增方法的热部署。
jetty命令:
## jetty.reload默认值也是automatic,通常我们只需要jetty:run,在特殊常见下,也是可以以下面的方式启动jetty jetty:run -Djetty.reload=automatic -Djetty.scanIntervalSeconds=10
maven-assembly-plugin
The Assembly Plugin for Maven is primarily intended to allow users to aggregate the project output along with its dependencies, modules, site documentation, and other files into a single distributable archive.To use the Assembly Plugin in Maven, you simply need to:
choose or write the assembly descriptor to use, configure the Assembly Plugin in your project's pom.xml, and run "mvn assembly:single" on your project.
链接
duplicate-fragment-name-error-jetty-maven-plugin关于maven-jetty-plugin 自动重启问题
相关文章推荐
- maven学习
- maven插件maven-war-plugin的使用
- jenkins------部署项目到jboss eap下
- maven使用经验集
- java application maven项目打自定义zip包实例(推荐)
- Maven安装及MyEclipse中使用Maven
- window下安装和配置maven环境
- Eclipse使用maven搭建spring mvc图文教程
- 使用maven+eclipse搭建struts2开发环境
- Maven 搭建SpringMVC+Hibernate项目详解
- myeclipse中使用maven前常见错误及解决办法
- Spring整合MyBatis(Maven+MySQL)图文教程详解
- 用Maven插件生成Mybatis代码的实现方法
- Java随手笔记8之包、环境变量和访问控制及maven profile实现多环境打包
- Eclipse 使用Maven构建SpringMVC项目
- maven利用tomcat插件部署远程Linux服务器的步骤详解
- 配置pom.xml用maven打包java工程的方法(推荐)
- maven搭建java ee项目图文教程
- Java的项目构建工具Maven的配置和使用教程
- maven中下载jar包源码和javadoc的命令介绍