`
healthandbeauty
  • 浏览: 169034 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

maven正确的集成命令-U -B 等

 
阅读更多


在持续集成服务器上使用怎样的 mvn 命令集成项目,这个问题乍一看答案很显然,不就是 mvn clean install 么?事实上比较好的集成命令会稍微复杂些,下面是一些总结:

  • 不要忘了clean: clean能够保证上一次构建的输出不会影响到本次构建。

  • 使用deploy而不是install: 构建的SNAPSHOT输出应当被自动部署到私有Maven仓库供他人使用,这一点在前面已经详细论述。

  • 使用-U参数: 该参数能强制让Maven检查所有SNAPSHOT依赖更新,确保集成基于最新的状态,如果没有该参数,Maven默认以天为单位检查更新,而持续集成的频率应该比这高很多。

  • 使用-e参数:如果构建出现异常,该参数能让Maven打印完整的stack trace,以方便分析错误原因。

  • 使用-Dmaven.repo.local参数:如果持续集成服务器有很多任务,每个任务都会使用本地仓库,下载依赖至本地仓库,为了避免这种多线程使用本地仓库可能会引起的冲突,可以使用-Dmaven.repo.local=/home/juven/ci/foo-repo/这样的参数为每个任务分配本地仓库。

  • 使用-B参数:该参数表示让Maven使用批处理模式构建项目,能够避免一些需要人工参与交互而造成的挂起状态。

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

1
0
分享到:
评论

相关推荐

    JAVA8最新最新最新版本8u351 Linux

    在Linux环境中安装Java 8u351,通常需要下载对应版本的JDK,然后解压到合适的位置,配置环境变量`JAVA_HOME`、`PATH`和`CLASSPATH`,确保系统能够正确识别和执行Java命令。此外,对于开发人员来说,还需要熟悉使用...

    软件一部培训教程(9)软件版本制作操作规范1

    4. **同步软件版本代码**:使用命令行工具,例如`cd MVN_VE_QB25SD_P182A10V1.0.1B06`进入版本目录,然后使用`repo init –u git3@10.0.30`命令初始化版本仓库,同步最新的代码。`repo`是一个用于管理多个Git子模块...

    软件一部培训教程之软件版本制作操作规范1

    而 `$repo init –u git3@10.0.30.` 是使用repo工具初始化仓库并指定上游仓库的命令,这一步用于连接到远程Git仓库,获取最新的代码库。 在软件版本制作流程中,有以下几个关键步骤: 1. **版本制作准备**: - **...

    gitHW

    - **远程仓库**:使用`git remote add origin <url>`关联远程仓库,`git push -u origin master`首次推送本地master分支到远程仓库。 2. **Java开发流程**: - **编写代码**:使用IDE如IntelliJ IDEA或Eclipse...

    GitDemo1

    此外,Git工具如GitHub、GitLab或Bitbucket提供了问题追踪、代码审查和持续集成等功能,进一步提升开发效率。 在GitDemo1项目中,可能包含以下内容: - **源代码文件**:`.java`文件是Java程序的主要组成部分,...

Global site tag (gtag.js) - Google Analytics