- 浏览: 387053 次
- 性别:
- 来自: 株洲
文章分类
最新评论
-
自闭丨先生:
melin 写道缺少合并web.xml文件功能。不过使用了se ...
使用Maven WAR插件实现多Web应用间的重迭运用 -
331008019:
Hudson 系列的文章写得够细、够全! 学习了…
如何正确在Hudson中使用Maven构建Job -
selina2011874:
请问Hudson也就是现在的jenkins 能选择对某个版本的 ...
使用Hudson进行持续集成(九) -
lovefly_zero:
wv1124 写道使用Hudson调用shell执行make, ...
Use Hudson之项目构建 -
wv1124:
使用Hudson调用shell执行make,编译失败hudso ...
Use Hudson之项目构建
相信大家都很有一个疑惑,就是我们在本地使用Hudson 构建Maven Job时,输入clean install 命令会发现它会去重新下载Jar包,一般情况下,我们都会在IDE和命令行调用过Maven构建,按理它应该不会去重新下载依赖才对,抱着和你同样的疑惑,我们现在去看看端倪。
我不打算在任务再调用一次clean install,而是直接使用help:effective-settings命令看看它是否调用我们的用户settings.xml文件。
在这里我先放一份我的用户settings.xml切片。
<settings> <!-- localRepository | The path to the local repository maven will use to store artifacts. | | Default: ~/.m2/repository --> <localRepository>d:/.m2/repository</localRepository> <!-- interactiveMode | This will determine whether maven prompts you when it needs input. If set to false, | maven will use a sensible default value, perhaps based on some other setting, for | the parameter in question. | | Default: true <interactiveMode>true</interactiveMode> --> <!-- offline | Determines whether maven should attempt to connect to the network when executing a build. | This will have an effect on artifact downloads, artifact deployment, and others. | | Default: false <offline>false</offline> --> <!-- proxies | This is a list of proxies which can be used on this machine to connect to the network. | Unless otherwise specified (by system property or command-line switch), the first proxy | specification in this list marked as active will be used. |--> <proxies> <!-- proxy | Specification for one proxy, to be used in connecting to the network. | <proxy> <id>optional</id> <active>true</active> <protocol>http</protocol> <username>proxyuser</username> <password>proxypass</password> <host>proxy.host.net</host> <port>80</port> <nonProxyHosts>local.net,some.host.com</nonProxyHosts> </proxy> --> </proxies> <pluginGroups> <pluginGroup>org.mortbay.jetty</pluginGroup> </pluginGroups> <servers> <server> <id>nexus</id> <username>admin</username> <password>1234</password> </server> <server> <id>nexus-releases</id> <username>admin</username> <password>1234</password> </server> <server> <id>nexus-public-snapshots</id> <username>admin</username> <password>1234</password> </server> </servers> <mirrors> <mirror> <id>nexus</id> <mirrorOf>*</mirrorOf> <url>http://127.0.0.1:8081/nexus/content/groups/public/</url> </mirror> </mirrors> <profiles> <profile> <id>nexus</id> <activation> <activeByDefault>true</activeByDefault> </activation> <repositories> <repository> <id>central</id> <url>http://central</url> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>true</enabled> </snapshots> <layout>default</layout> </repository> </repositories> <pluginRepositories> <pluginRepository> <id>central</id> <url>http://central</url> <releases> <enabled>true</enabled> <updatePolicy>daily</updatePolicy> <checksumPolicy>warn</checksumPolicy> </releases> <snapshots> <enabled>true</enabled> </snapshots> <layout>default</layout> </pluginRepository> </pluginRepositories> </profile> </profiles> <activeProfiles> <activeProfile>nexus</activeProfile> </activeProfiles> </settings>
运行Maven Job ,目标输入help:effective-settings,控制台打印的切片如下:
[account-aggregator] $ D:\hudson_ci\hudson_dep_tools\apache-maven-2.2.1\bin\mvn.bat help:effective-settings [INFO] Scanning for projects... [INFO] Reactor build order: [INFO] Account Parent [INFO] Account Email [INFO] Account Persist [INFO] Account Aggregator [INFO] Searching repository for plugin with prefix: 'help'. [INFO] ------------------------------------------------------------------------ [INFO] Building Account Aggregator [INFO] task-segment: [help:effective-settings] (aggregator-style) [INFO] ------------------------------------------------------------------------ [INFO] [help:effective-settings {execution: default-cli}] [INFO] Effective user-specific configuration settings: <?xml version="1.0" encoding="UTF-8"?> <!-- ====================================================================== --> <!-- --> <!-- Generated by Maven Help Plugin on 2010-12-08T11:24:17 --> <!-- See: http://maven.apache.org/plugins/maven-help-plugin/ --> <!-- --> <!-- ====================================================================== --> <!-- ====================================================================== --> <!-- --> <!-- Effective Settings for 'JDONEE-ZAH$' on 'Jdonee-ZAH' --> <!-- --> <!-- ====================================================================== --> <settings xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd"> <localRepository xmlns="http://maven.apache.org/SETTINGS/1.0.0">C:\Windows\System32\config\systemprofile\.m2\repository</localRepository> </settings> [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESSFUL [INFO] ------------------------------------------------------------------------ [INFO] Total time: 1 second [INFO] Finished at: Wed Dec 08 23:24:17 CST 2010 [INFO] Final Memory: 6M/127M [INFO] ------------------------------------------------------------------------ Finished: SUCCESS
God,怎么把构件都下载C:\Windows\System32\config\systemprofile\.m2\repository这个位置了。 看来Hudson根本就不认可Maven的环境变量以及用户级settings.xml。
还好有神奇的-s参数(--settings)帮忙,这个参数的作用就是让用户指定可运行的settings.xml文件。我的用户级settings目录存放在C:\Users\Jdonee\.m2目录下。
那么我们目标改成help:effactive-settings -s C:\Users\Jdonee\.m2\settings.xml,马上查看控制台的打印切片:
[account-aggregator] $ D:\hudson_ci\hudson_dep_tools\apache-maven-2.2.1\bin\mvn.bat help:effective-settings -s C:\Users\Jdonee\.m2\settings.xml [INFO] Scanning for projects... [INFO] Reactor build order: [INFO] Account Parent [INFO] Account Email [INFO] Account Persist [INFO] Account Aggregator [INFO] Searching repository for plugin with prefix: 'help'. [INFO] ------------------------------------------------------------------------ [INFO] Building Account Aggregator [INFO] task-segment: [help:effective-settings] (aggregator-style) [INFO] ------------------------------------------------------------------------ [INFO] [help:effective-settings {execution: default-cli}] [INFO] Effective user-specific configuration settings: <?xml version="1.0" encoding="UTF-8"?> <!-- ====================================================================== --> <!-- --> <!-- Generated by Maven Help Plugin on 2010-12-08T11:26:55 --> <!-- See: http://maven.apache.org/plugins/maven-help-plugin/ --> <!-- --> <!-- ====================================================================== --> <!-- ====================================================================== --> <!-- --> <!-- Effective Settings for 'JDONEE-ZAH$' on 'Jdonee-ZAH' --> <!-- --> <!-- ====================================================================== --> <settings xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd"> <localRepository xmlns="http://maven.apache.org/SETTINGS/1.0.0">d:/.m2/repository</localRepository> <servers xmlns="http://maven.apache.org/SETTINGS/1.0.0"> <server> <username>admin</username> <password>***</password> <id>nexus</id> </server> <server> <username>admin</username> <password>***</password> <id>nexus-releases</id> </server> <server> <username>admin</username> <password>***</password> <id>nexus-public-snapshots</id> </server> ...省略...
哈哈,大功告成对不对,可是现在还有点小小的瑕疵,如果我定义很多的Maven任务,新建任务都要再输一遍实在是很麻烦(虽然很多时候,我们会通过复制任务减少一些配置量),而且一旦我迁移到其它系统环境,比如Linux等等,同样也不方便。
所以我们必须要把它定义到全局变量中。
点击“系统管理”,选择“系统设置”,启用“Environment variables”,新增一个环境变量,输入如Key=yoursettings,Value=C:\Users\Jdonee\.m2\settings.xml。
注:key值不要使用特殊字符如"-"等,以免命令行不认。
关于Environment variables的官方解释是:这些键值对每个节点上的每个应用都有效.它们可以在Hudson配置(如$key或者${key})中使用, 并且在每个构建启动时被加入到环境变量中.
好了,我们在Job的目标更改为help:effective-settings -s $yoursettings执行,控制台打印更上面的切片一样,Perfact!
评论
help:effactive-settings -s $yoursettings
又学了一个新用法。
发表评论
-
使用Email-ext替换Hudson的默认邮件通知
2011-05-11 11:16 0简述 该插件能允许你运用到邮件通知的方方面面,比如在发送邮件 ... -
使用matrix security对Hudson进行细粒度Job的安全控制
2010-09-19 17:04 2767写在前面的话 以前有 ... -
Use Hudson之项目构建
2009-12-10 09:56 7916译自:http://wiki.hudson-ci.org/ ... -
Use Hudson之管理Hudson
2009-11-25 17:22 4698译自:http://wiki.hudson-ci.org/ ... -
Hudson插件之按主题分类(下)
2009-11-20 12:44 5229混合插件 Build-timeout Plugin ... -
Hudson插件之按主题分类(中)
2009-11-17 16:28 8483集成外部站点/工具 Hudson还可以通过这些插件整合外部 ... -
Hudson插件之按主题分类(上)
2009-11-12 16:05 12621按主题管理插件 源代码管理 Hudson本身支持S ... -
Hudson插件之Active Directory plugin (活动目录)
2009-10-30 14:55 3104摘自http://wiki.hudson-ci.org/ ... -
Use Hudson之文件指纹识别
2009-05-12 17:30 2636译自:http://wiki.huds ... -
Use Hudson之最佳实践
2009-05-04 17:21 5830简介:持续集成(CI)的测试执行和趋势的自动化已经大大 ... -
Use Hudson之标准安全设置
2009-04-29 18:06 5053简介:本文讨论了最常 ... -
使用Hudson进行持续集成(九)
2009-01-13 13:59 14003构建轨道 译自 ... -
使用Hudson进行持续集成(八)
2009-01-13 13:58 13919运行并监控作业 译自: http://www.javaw ... -
使用Hudson进行持续集成(七)
2009-01-13 10:49 22677译自: http://www.javawor ... -
使用Hudson进行持续集成(六)
2009-01-08 10:06 14123译自: http://www.javawor ... -
使用Hudson进行持续集成(五)
2009-01-07 18:23 14528译自: http://www.javaworld.com/j ... -
使用Hudson进行持续集成(四)
2009-01-07 12:14 12399译自: http://www.javaworld.com/j ... -
使用Hudson进行持续集成(三)
2009-01-06 18:22 14367译自: http://www.javaworld.com/j ... -
使用Hudson进行持续集成(二)
2009-01-06 11:57 17461译自: http://www.javawor ... -
使用Hudson进行持续集成(一)
2009-01-05 18:31 25622译自: http://www.javaworld.co ...
相关推荐
hudson svn maven 自动构建 deploy pom
集成工具hudson与maven2的Hudson 安装及配置
Hudson+Maven+SVN搭建持续集成环境
使用hudson和maven完成持续集成,今天一个朋友过来问我,我就顺便录了一个简短的视屏,对使用做了一个简单的介绍,最大只参上传25M的文件,所以只能分两个包上传,希望能有需要的朋友有帮助
使用Hudson、Maven以及SVN进行持续化集成项目,实现项目的自动化构建、部署。
hudson安装及其配置 hudson平台搭建及使用 Hudson使用参考手册 关于hudson远程自动构建发布 使用hudson_搭建daily_build_系统
NULL 博文链接:https://yanguoyu.iteye.com/blog/540786
个人整合网上资源加上自己的实践 成功的搭建了一套Git Nexus私服 Hudson管理的环境 并附有Checkout commit deploy 实例
Hudson Maven generate report
hudson 安装包 subversion 安装包 maven 包 hudson depoly 插件 UTF-8 BOM去除工具
maven+hudson全部Jar包.part06.rar
hudson+maven+svn的简单自动化部署,目前本人已经使用在现网了、简单实用。已经说明所有步骤,看着练习就可以使用发布了
NULL 博文链接:https://a601167866.iteye.com/blog/1561410
maven+springmvc+mybatis集成svn+hudson
Hudson安装与使用,Hudson配置,Hudson插件Hudson安装与使用,Hudson配置,Hudson插件Hudson安装与使用,Hudson配置,Hudson插件Hudson安装与使用,Hudson配置,Hudson插件Hudson安装与使用,Hudson配置,Hudson插件...
hudson+maven.ppt
持续集成工具hudson与maven2的结合
详细描述Maven,Sonar和Hudson,以及集成的方案。
工作目的:实现自动化部署工作,以期提高开发项目的工作效率; 工作内容:利用开源的可持续集成工具,实现java项目的...二、 Maven对web项目的编译、打包与发布; 三、 Hudson对web项目实现自动化的编译、打包与发布;
Hudson+Maven+SVN 搭建持续集成环境