jenkins(Hudson)部署和插件开发指导书
时间:2026-01-16
时间:2026-01-16
一、 jenkins(hudson)插件开发
1、 进入,选择你要下载的maven2的版本
2、 你机子上的JDK必须是1.6以上的
3、 下载之后解压开,放到E盘下,如:E:\apache-maven-2.2.1,这个随你
4、 设置环境变量,M2_HOME=E:\apache-maven-2.2.1
在path里加上 % M2_HOME %\bin
5、 在如下的E:\apache-maven-2.2.1\conf\settings.xml中添加如下一段
<settings>
<profiles>
<profile>
<id>hudson</id>
<activation>
<activeByDefault />
</activation>
<pluginRepositories>
<pluginRepository>
<id>m.g.o-public</id>
<url>http://www.77cn.com.cn/content/groups/public/</url>
</pluginRepository>
</pluginRepositories>
<repositories>
<repository>
<id>m.g.o-public</id>
<url>http://www.77cn.com.cn/content/groups/public/</url>
</repository>
</repositories>
</profile>
</profiles>
<activeProfiles>
<activeProfile>hudson</activeProfile>
</activeProfiles>
<pluginGroups>
<pluginGroup>org.jvnet.hudson.tools</pluginGroup>
</pluginGroups>
</settings>
这样会将Maven指向拥有maven插件的仓库。
进入cmd,输入 mvn -cpu hpi:create
这里注意:如果你是通过代理连网的,这里则需要设置代理:
mvn -cpu hpi:create –D
-cpu:maven要更新所有的相关maven插件
hpi:简写的前缀,是指调用HUDSON的HPI插件,而HPI插件用以支持插件的开发
这个过程比较费点时间,他是从maven核心库下载所需要的东西,到最后,会提示你填写 groupId(插件项目中的包名,如:test)和 artifactId(插件的项目工程名,如:test),创建完成后,你就可以在你的用户名下看到这个新建的插件,里面有一些模板代码,可供你学习如何开始写一个Hudson的插件,后面的代码全部来自模版代码。
因为我们需要通过eclipse(3.3以上)来编写插件,所以先进入刚刚新建的那个插件目录,执行如下命令:mvn -DdownloadSources=true eclipse:eclipse (如若需要,也要设置代理,方法同上)
这个过程比上个过程还要费时,所以请耐心等待
等下载完成了,它提示构建成功了,你就可以把这个工程导入eclipse并开始开发插件了
7、 插件的目录结构
我们导入工程后,可以大概看下目录结构
这个就是一个插件的模板
如果你想在Hudson的控制台,或者项目配置页面里赋予插件一些参数,或者在project或者build页面里现实点什么,那么你就需要写一个jelly脚本并将他放在resources文件夹里,并且包路径一一对应。
举个例子,就如上面的截图,如果你有个叫HelloWorldBuilder的类,位于test包路径下,它需要使用一个config.jelly,以便于可以在项目的配置页面对其进行配置。那么这个jelly脚本在resources里的包应该是test.HelloWorldBuilder,这样Hudson就会自动地调用它。 而且在Hudson中,jelly脚本有一定的命名规则。比如,config.jelly是用于显示在项目配置页面中的创建,而global.jelly是用于Hudson设置的。
现在我们就利用这个模板来一个小小的实践,在test下创建一个新的类:ProcessWrapper,在resources下面创建一个包:test.ProcessWrapper,然后把test.HelloWorldBuilder下面的3个文件复制到test.ProcessWrapper下,然后删除包test.HelloWorldBuilder,同时也删除HelloWorldBuilder.java
现在的目录结构就如下
附上ProcessWrapper.java
ProcessWrapper.java
进入此工程的根目录test下,执行,mvn hpi:run,进行插件调试
在启动调试之前,你先确定端口8080没被占用,如果被占用个,我们可以用如下命令: mvn hpi:run –Djetty.port=**** 来更改端口号
之后,你可以打开 http://localhost:post,你就能看到在jetty中运行的hudson,同时在插件管理中你可以发现你的插件已经安装过了
index.jelly 可以写上你的插件的说明
pom.xml中name一项可以定义你插件的名字,调试成功之后,就可以发布插件了
同样在项目的跟目录test下,执行 mvn package,这个命令会将插件打包/test/target/*.hpi文件,这样你就可以把这个*.hpi复制到%JENKINS_HOME%\plugins下,重启jenkins服务,即可安装插件,安装完后,进入jenkins,去某个工程的设置下,你会发现多了如下一点东西
这样就说明这个插件已经生效了,当然你也可以去插件管理那看到你安装的你自己开发的第一个插件,你也发现插件名字和插件说明都是你在pom.xml和index.jelly中定义的
…… 此处隐藏:414字,全部文档内容请下载后查看。喜欢就下载吧 ……