07 2014 档案
摘要:maven引入的传递性依赖机制,一方面大大简化和方便了依赖声明,另一方面,大部分情况下我们只需要关心项目的直接依赖是什么,而不用考虑这些直接依赖会引入什么传递性依赖。但有时候,当传递性依赖造成问题的时候,我们就需要清楚地知道该传递性依赖是从哪条依赖路径引入的。例如,项目A有这样的依赖关系 : A--...
阅读全文
摘要:2014-07-04:更新如何在安装程序中找到超级pom文件。Maven有一个超级POM,所有的POM均继承此文件。你可以使用解压工具打开jar文件$M2_HOME/lib/maven-model-builder-x.x.x.jar,然后访问路径org/apache/maven/model/pom-...
阅读全文
摘要:POM的全称是“ProjectObjectModel(项目对象模型)”。pom.xml详解声明规范4.0.0基本内容parentgroupIdorg.codehaus.mojoartifactIdmy-projectversion1.0-SNAPSHOTpackagingjardependencie...
阅读全文
摘要:去年10月份Apache Maven发布了3.0正式版,而在上个月的22号,Eclipse基金会宣布了Eclipse 3.7(Indigo)的发布,该版本Eclipse最大的新特性之一就是集成了Maven。下载Eclipse IDE for Java Developers版本的用户会发现,Eclip...
阅读全文
摘要:“打包“这个词听起来比较土,比较正式的说法应该是”构建项目软件包“,具体说就是将项目中的各种文件,比如源代码、编译生成的字节码、配置文件、文档,按照规范的格式生成归档,最常见的当然就是JAR包和WAR包了,复杂点的例子是Maven官方下载页面的分发包,它有自定义的格式,方便用户直接解压后就在命令行使...
阅读全文
摘要:我们都知道Maven本质上是一个插件框架,它的核心并不执行任何具体的构建任务,所有这些任务都交给插件来完成,例如编译源代码是由maven- compiler-plugin完成的。进一步说,每个任务对应了一个插件目标(goal),每个插件会有一个或者多个目标,例如maven- compiler-plu...
阅读全文
摘要:我们都知道Maven本质上是一个插件框架,它的核心并不执行任何具体的构建任务,所有这些任务都交给插件来完成,例如编译源代码是由maven-compiler-plugin完成的。进一步说,每个任务对应了一个插件目标(goal),每个插件会有一个或者多个目标,例如maven-compiler-plugi...
阅读全文
摘要:Maven面临的挑战软件行业新旧交替的速度之快往往令人咂舌,不用多少时间,你就会发现曾经大红大紫的技术已经成为了昨日黄花,当然,Maven也不会例外。虽然目前它基本上是Java构建的事实标准,但我们也能看到新兴的工具在涌现,比如基于Goovy的Gradle,而去年Hibernate宣布从Maven迁...
阅读全文
摘要:自动化集成测试的角色本专栏的上一篇文章讲述了Maven与持续集成的一些关系及具体实践,我们都知道,自动化测试是持续集成必不可少的一部分,基本上,没有自动化测试的持续集成,都很难称之为真正的持续集成。我们希望持续集成能够尽早的暴露问题,但这远非配置一个 Hudson/Jenkins服务器那么简单,只有...
阅读全文
摘要:Martin的《持续集成》相信很多读者和我一样,最早接触到持续集成的概念是来自Martin的著名文章《持续集成》,该文最早发布于2000年9月,之后在2006年进行了一次修订,它清晰地解释了持续集成的概念,并总结了10条实践,它们分别为:只维护一个源码仓库自动化构建让构建自行测试每人每天向主干提交代...
阅读全文
摘要:重复,还是重复程序员应该有狗一般的嗅觉,要能嗅到重复这一最常见的坏味道,不管重复披着怎样的外衣,一旦发现,都应该毫不留情地彻底地将其干掉。不要因为POM不是产品代码而纵容重复在这里发酵,例如这样一段代码就有重复: org.springframework spring-beans 2.5 or...
阅读全文
摘要:重构是广大开发者再熟悉不过的技术,在Martin Fowler的《重构——改善既有代码的设计》一书中,其定义为“重构(名词):对软件内部结构的一种调整,目的是在不改变软件之可察行为前提下,提高其可理解性,降低其修改成本.”以及“重构(动词):使用一系列重构准则(手法),在不改变软件之可察行为前提下,...
阅读全文
摘要:坐标是什么?为什么要规划?坐标是Maven最基本的概念,它就像每个构件的身份证号码,有了它我们就可以在数以千万计的构件中定位任何一个我们感兴趣的构件。举个最简单的例子,如果没有坐标,使用JUnit的时候,用户就需要去下载依赖jar包,用依赖的方式,简单配置使用如junit:junit:4.8.2就可...
阅读全文
摘要:Maven内置变量说明:${basedir} 项目根目录(即pom.xml文件所在目录)${project.build.directory} 构建目录,缺省为target目录${project.build.outputDirectory} 构建过程输出目录,缺省为target/classes${pr...
阅读全文
摘要:说明:1、使用-选项时,和后面的参数之间可以不要空格。而使用--选项时,和后面的参数之 间必须有空格。如下面的例子:$ mvn help:describe -Dcmd=compiler:compile$ mvn install --define maven.test.skip=true2、有些命令行...
阅读全文
摘要:文件存放位置全局配置:${M2_HOME}/conf/settings.xml用户配置:${user.home}/.m2/settings.xmlnote:用户配置优先于全局配置。${user.home}和和所有其他系统属性只能在3.0+版本上使用。请注意windows和Linux使用变量的区别。s...
阅读全文
摘要:写在最前的总结:Jenkins其实就是一个工具,这个工具的作用就是调用各种其他的工具来达成你的目的。比如你要获取Subversion上最新的源代码,Jenkins会去调用SVNKIT(插件的核心Jar的名称)。然后你需要编译源代码(假设是用maven编译),Jenkins会去调用maven的插件。最...
阅读全文
摘要:在Jenkins中,英语一大片,看着各种蛋疼。非常高兴的是,Jenkins作为一个主流流行的持续构建工具,提供了一个本地化语言的配置界面。你可以找到它,在Jenkins每页的左下角。如下图:点击帮助我们本地化当前页,出现如下窗口(友情提示:请关闭自动刷新功能)Locale:你翻译的语言的种类,Chi...
阅读全文
摘要:升级JenkinsJenkins的开发迭代非常快,每周发布一个开发版本,长期支持版每半年更新一次(ps:大版本更新)。如此频繁的更新,怎么升级呢?war:下载新版的war文件,替换旧版本war文件。重启即可。二进制:卸载旧版本,安装新版本即可。Jenkins程序下载地址:http://mirrors...
阅读全文
摘要:网上看见的,确实很全,该有的基本都覆盖到了。自己拿来稍微改改就可以用了。注:property中的value是你自己的一些本地变量。需要改成自己的 - Generate war file - ...
阅读全文
摘要:各位小伙伴们在工作中总是会碰到各种各样的奇葩需求,今天给大家说说Maven怎么在Jenkins中获取Subversion的版本号。Jenkins自己的环境变量中包含了很多有用的的参数,详情查看:http://xxxx/env-vars.html从环境变量中可以发现,我们可以直接获取到Subversi...
阅读全文
摘要:今天给大家说说使用Jenkins专有用户数据库的配置,和一些常用的权限配置。配置用户注册在已运行的Jenkins主页中,点击左侧的系统管理—>ConfigureGlobalSecurity进入如下界面:设置如上图,保存后系统管理中就出现管理用户的选项。页面右上角也会出现登录/注册的选项。点击注册:点...
阅读全文
摘要:说明:本方法适用于安全矩阵和项目矩阵授权策略的Jenkins。很多童鞋在使用jenkins的时候忘记配置权限或者权限配置错误,然后各种蛋疼。最近闲着无事,折腾了下。好了,闲话少扯。Jenkins的权限配置文件存放在JENKINS_HOME目录。进入JENKINS_HOME目录,找到config.xm...
阅读全文
摘要:2014-03-02:修正对于lable标签的理解。(1.532.1版本已经给出了官方解释)2013-12-22:添加JNLP端口修改,修改了一些错误。Jenkins有个很强大的功能:分布式构建(在Jenkins的配置中叫做节点),分布式构建能够让同一套代码在不同的环境(如:Windows和Linu...
阅读全文
摘要:说明:本方法仅适用于jdk6+、tomcat6+和Jenkins专有用户数据库的Jenkins!很多童鞋在使用jenkins的时候忘记密码了,然后各种蛋疼。最近闲着无事,折腾了下。好了,闲话少扯。Jenkins专有用户的数据存放在JENKINS_HOME/users目录。users目录的结构我就不扯...
阅读全文
摘要:说明:这个插件可以通过ssh连接其他Linux机器官方说明:Publish Over SSH安装步骤:系统管理→管理插件→可选插件→Artifact Uploaders→Publish Over SSH系统设置(所有的高级全部展开)公共配置:Passphrase:密码(key的密码,如果你设置了)P...
阅读全文
摘要:ssh认证的完整描述:https://www.ibm.com/developerworks/cn/linux/security/openssh/part1/说明:点我去查看今天我们只说生成ssh的key,从而达到免密码登陆的目的。不知道ssh是什么的自己看说明。好了,不废话了。系统:CentOS 5...
阅读全文
摘要:2014-07-25:更新shell脚本2014-06-05:更新shell脚本2014-01-09:更新shell脚本,修改Jenkins文件删除后不能自动从版本控制删除的bug是不是有过这种经历:某天手贱,把某一个配置更改了。然后只能在那儿苦逼的看着,然后的然后把以前的配置重新配一次。坑爹的是以...
阅读全文
摘要:Jenkins默认会存放在用户主目录下的.jenkins文件夹中如:Linux root用户:/root/.jenkins注意:这是linux版本的。windows系统请自行更改。这个值在Jenkins运行时是不能更改的. 请先将Jenkins停止运行。如果查看当前Jenkins目录:系统管理→系统...
阅读全文
摘要:注意:绝对路径用/开头绝对路径:/root/.jenkins/jobs/test/workspace/bbb/test.war相对路径:bbb/test.war点我下载文章转载:http://www.cnblogs.com/zz0412/tag/jenkins/
阅读全文
摘要:说明:这个插件可以将构建的产物(例如:Jar)发布到FTP中去。官方说明:FTP publisher plugin安装步骤:系统管理→管理插件→可选插件→Artifact Uploaders→FTP publisher plugin系统设置Profile Name:给你自己看的名字,爱叫什么叫什么h...
阅读全文
摘要:说明:这个插件可以将构建的产物(例如:Jar)发布到FTP中去。官方说明:Publish Over FTP Plugin安装步骤:系统管理→管理插件→可选插件→Artifact Uploaders→Publish Over FTP Plugin系统设置FTP ServerName:给你自己看的名字,...
阅读全文
摘要:说明:这个插件可以根据已经完成构建的结果,触发新Job或者传递参数。官方说明:Parameterized Trigger Plugin安装步骤:系统管理→管理插件→可选插件→Build Triggers→Parameterized Trigger Plugin安装完成后到项目(job)配置页面:构建...
阅读全文
摘要:发现一个很好的邮件通知模板,根据我的需求定制了一些。分享一下。Default Subject:构建通知:${BUILD_STATUS} - ${PROJECT_NAME} - Build # ${BUILD_NUMBER} !Default Content:${ENV, var="JOB_NAME"...
阅读全文
摘要:1简述众所周知,Jenkins默认提供了一个邮件通知,能在构建失败、构建不稳定等状态后发送邮件。但是它本身有很多局限性,比如它的邮件通知无法提供详细的邮件内容、无法定义发送邮件的格式、无法定义灵活的邮件接收配置等等。在这样的情况下,我们找到了JenkinsEmailExtensionPlugin。该...
阅读全文
摘要:2Jenkins安装在最简单的情况下,Jenkins只需要两个步骤:1.下载最新的版本(一个WAR文件)。Jenkins官方网址:http://Jenkins-ci.org/2.运行java-jarjenkins.war注意:Jenkins需要运行Java5以及以上的版本。还有一种安装方式就是将下载...
阅读全文
摘要:Jenkins是一个可扩展的持续集成引擎。主要用于:l持续、自动地构建/测试软件项目。l监控一些定时执行的任务。Jenkins拥有的特性包括:l易于安装-只要把jenkins.war部署到servlet容器,不需要数据库支持。l易于配置-所有配置都是通过其提供的web界面实现。l集成RSS/E-ma...
阅读全文

浙公网安备 33010602011771号