Maven集成指令总结

  1. clean: clean能够保证上一次构建的输出不会影响到本次构建。
  2. 使用deploy而不是install: 构建的SNAPSHOT输出应当被自动部署到私有Maven仓库供他人使用。
  3. -U参数: 该参数能强制让Maven检查所有SNAPSHOT依赖更新,确保集成基于最新的状态,如果没有该参数,Maven默认以天为单位检查更新,而持续集成的频率应该比这高很多。
  4. -e参数:如果构建出现异常,该参数能让Maven打印完整的stack trace,以方便分析错误原因。
  5. -Dmaven.repo.local参数:如果持续集成服务器有很多任务,每个任务都会使用本地仓库,下载依赖至本地仓库,为了避免这种多线程使用本地仓库可能会引起的冲突,可以使用-Dmaven.repo.local=/home/juven/ci/foo-repo/这样的参数为每个任务分配本地仓库。
  6. -B参数:该参数表示让Maven使用批处理模式构建项目,能够避免一些需要人工参与交互而造成的挂起状态。

  综上,持续集成服务器上的集成命令应该为 mvn clean deploy -B -e -U -Dmaven.repo.local=xxx 。此外,定期清理持续集成服务器的本地Maven仓库也是个很好的习惯,这样可以避免浪费磁盘资源,几乎所有的持续集成服务器软件都支持本地的脚本任务,你可以写一行简单的shell或bat脚本,然后配置以天为单位自动清理仓库。需要注意的是,这么做的前提是你有私有Maven仓库,否则每次都从Internet下载所有依赖会是一场噩梦。

原文地址:https://www.cnblogs.com/huyufan/p/9531216.html

时间: 2024-10-31 18:46:53

Maven集成指令总结的相关文章

javafx maven集成遇到的问题解决

javafx maven集成采用javafx-maven-plugin, 主要分为几个目标: jfx:jar jfx:web jfx:native jfx:fix-classpath jfx:generate-key-store jfx:run 但是在 mvn clean jfx:run 时遇到了问题: [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/PluginContainerException 解决方法:

maven集成tomcat7插件运行web项目

maven集成tomcat插件运行web项目1.修改pom.xml如下所示:添加依赖servlet,jsp,jstl,tomcat插件 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0

Eclipse和Maven集成

本文使用 Eclipse 集成 Maven,并创一个基于 maven的web工程 一 环境版本信息 本文使用的版本信息如下: Eclipse Version: Mars.1 Release (4.5.1) Maven Version: Apache maven 3.2.1 Jave Version : 1.7.0_25 二 创建一个Web项目

maven 集成spring ,mybatis

maven工程分模块项目可以模块与模块之间的耦合度降低,各模块之间的联系就没有那么的紧密.通常情况下为了打包方便,建立一个父类的模块.这样打包发布的时候就不用一个个模块打包过去,只有父类的模块手动打包下就可以了, 工程如下图所示: 其中book-parent为父类模块,book-core持久层,book-service为服务层,book-web的可视化层 ,既分别对应mvc中的相应层. 一.book-core 1.添加包支持,pom.xml配置如下: <project xmlns="htt

maven集成命令-U -B -P -e -X

maven -U clean compile install -e -X -Dmaven.test.skip=true 在持续集成服务器上使用怎样的 mvn 命令集成项目,这个问题乍一看答案很显然,不就是 mvn clean install 么?事实上比较好的集成命令会稍微复杂些,下面是一些总结: 不要忘了clean: clean能够保证上一次构建的输出不会影响到本次构建. 使用deploy而不是install: 构建的SNAPSHOT输出应当被自动部署到私有Maven仓库供他人使用,这一点在前

Quartz+spring+maven集成实例(解决Job实现类注入bean为空的问题)

环境: jdk1.7.eclipse.maven.quartz2.2.1 包的架构: 流程: 1.创建项目并在pom中加入相应的jar包 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0

Maven 集成Tomcat7插件

Maven已经是Java的项目管理标配,如何在JavaEE开发使用Maven调用Web应用,是很多同学关心的问题.本文将介绍,Maven如何介绍Tomcat插件. Maven Tomcat插件现在主要有两个版本,tomcat-maven-plugin和tomcat7-maven-plugin,使用方式基本相同. tomcat-maven-plugin 插件官网:http://mojo.codehaus.org/tomcat-maven-plugin/plugin-info.html. tomca

maven集成jetty插件热部署

一.org.eclipse.jetty插件启动 1.maven依赖 <dependency>    <groupId>org.eclipse.jetty</groupId>    <artifactId>jetty-webapp</artifactId>    <version>9.4.5.v20170502</version> </dependency> 2.plugin <plugin>  &l

Maven 集成Tomcat插件自动发布项目到tomcat的webapps目录下

一.maven的配置 <build> <finalName>fish-web</finalName> <!--  将项目发布到tomcat6   --> <pluginManagement> <plugins> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>tomcat-maven-plugin</artifac