jekins集成maven发布项目过程中遇到的坑
背景:
用maven构建项目之后,每次需要部署集成测试环境,用户体验环境都需要停掉现在的工作,更改pom.xml中的环境配置,打包部署,打断了正在开发的思路不说,还有可能把更改的pom.xml不小心提交到SVN上面,jenkins可以持续部署,值得一试,下面就会记录我在安装的过程中遇到的问题。
1.jenkins安装
https://jenkins.io/index.html
jenkins官网下载最新的war包,使用java-jarjenkins.war启动服务
问题来了,我在windows下面启动的时候提示我mail插件环境太老,就算不管这个错误,进入jenkins主界面之后,右上角会有错误的提示,按照提示安装相应的jenkins插件
安装插件的位置jenkins->系统管理->管理插件->高级,这个页面下面有一个上传插件的地方,在https://plugins.jenkins.io/下载需要安装的插件上传并且重启jenkins就可以了。
2.新建项目
如果我需要新建一个maven项目,但是并没有找到相关的选项,这是由于没有maven插件的原因
MavenIntegrationplugin
在配置svn时无法找到相关的svn选项,需要安装SubversionPlug-in
构建命令
cleanyuicompressor:compress-Ptestinstalltomcat7:deploy-Dmaven.test.skip=true
这个命令也可以把war包发布到tomcat8,为什么?因为我试过!
3.发布到服务器
构建后的操作如果没有发布到tomcat的选项是缺少插件的原因
deploytocontainerplugin
在发布之前需要配置tomcat的用户并且打开管理台,配置的用户格式如下
<rolerolename="admin"/>
<rolerolename="manager-script"/>
<rolerolename="manager-gui"/>
<rolerolename="manager-jmx"/>
<userusername="username"password="password"roles="manager-gui,manager-script,manager-jmx,manager-status"/>
发布的时候warfiles填写target/App.war,ContextPath如果填空的话会生成ROOT.war文件
4.发布经常出现内存溢出的现象,需要调整tomcat的启动参数
修改catalina.sh,找到echo"UsingCATALINA_BASE:$CATALINA_BASE"在这一行下面添加
JAVA_OPTS="-server-XX:PermSize=256M-XX:MaxPermSize=256m"
调大相关的参数,这样就可以正常发布了
在pom.xml中配置远程发布的配置如下
<!--远程部署tomcat-->
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<url>${package.deployUrl}</url>
<server>TomcatServer</server>
<path>/</path>
<username>username</username>
<password>password</password>
<update>true</update>
</configuration>
</plugin>
deployUrl和管理台界面不一致(以text后缀结尾)
http://localhost:8080/manager/text
如果在运行过程中提示找不到的话,可以在maven配置文件中配置
<pluginGroups>
<!--pluginGroup
|Specifiesafurthergroupidentifiertouseforpluginlookup.
<pluginGroup>com.your.plugins</pluginGroup>
-->
<pluginGroup>org.apache.tomcat.maven</pluginGroup>
</pluginGroups>
Maven打包报“java.lang.StackOverflowError”错解决办法
1.在命令行执行:
平台:windows
在maven安装目录的bin目录下,找到mvn.bat或mvn.cmd(不同版本后缀名不一样)打开并添加
setMAVEN_OPTS=-Xss4096k
2.在jenkins控制台中->系统管理->系统设置->全局MAVEN_OPTS,调整Xss参数