Jenkins插件开发(二)-- HelloWorld

在上一篇blog中咱们讲了如何搭建jenkins插件的开发环境,接下来介绍如何开发咱们的插件。java

建立HelloWorld插件

学习每门新语言的时候,咱们都会写一个HelloWorld程序,这里介绍的是如何建立一个Jenkins的HelloWorld插件。web

一、首先修改Maven的配置,将Maven的链接库修改成jenkins plugins的资源库,方便相关pom组件从jenkins上下载,修改的是 %USERPROFILE%/.m2/settings.xml文件。
settings.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
<settings>  <pluginGroups>  <pluginGroup>org.jenkins-ci.tools</pluginGroup>  </pluginGroups>   <profiles>  <!-- Give access to Jenkins plugins -->  <profile>  <id>jenkins</id>  <activation>  <activeByDefault>true</activeByDefault> <!-- change this to false, if you don't like to have it on per default -->  </activation>  <repositories>  <repository>  <id>repo.jenkins-ci.org</id>  <url>http://repo.jenkins-ci.org/public/</url>  </repository>  </repositories>  <pluginRepositories>  <pluginRepository>  <id>repo.jenkins-ci.org</id>  <url>http://repo.jenkins-ci.org/public/</url>  </pluginRepository>  </pluginRepositories>  </profile>  </profiles>  <mirrors>  <mirror>  <id>repo.jenkins-ci.org</id>  <url>http://repo.jenkins-ci.org/public/</url>  <mirrorOf>m.g.o-public</mirrorOf>  </mirror>  </mirrors> </settings> 
二、打开CMD,进入一个想要放插件工程的目录,执行如下命令。
1
mvn -U org.jenkins-ci.tools:maven-hpi-plugin:create -DgroupId={your.gound.id} -DartifactId={your.plugin.id} 

命令中的 your.groud.id 和 your.plugin.id 填你插件的具体对应的值。浏览器

your.group.id 会造成你的包结构,好比 your.group.id=abc.def.ghi,那工程下的src/main/java 目录下会产生abc.def.ghi 这样的目录。服务器

执行完命令后,该目录下会产生一个名称是{your.plugin.id}的目录,这个目录工程就是咱们的HelloWorld插件工程。maven

三、插件打包

建立好工程以后,执行下面的命令能够在 target 子目录下产生一个 hpi 文件,该文件就是咱们的插件文件,能够直接上传到 jenkins 的服务器。学习

1
mvn package 
四、启动本地服务

在第三步产生的 hpi 文件要上传到一个部署好的jenkins服务器才能够看到效果,咱们也能够经过如下命令启动一个包含插件的本地jenkins服务。ui

1
mvn hpi:run 

执行完命令以后,在浏览器打开localhost:8080,就能够访问本地的Jenkins服务了,这里默认用的是 jetty6的 web 容器。this

五、运行HelloWorld插件

在Job的配置页面,其中的构建子项中Add Build Step按钮,点击后下拉框中会有一个Say Hello World的选项,这个就是咱们的HelloWorld 插件,选中后保存配置,进行Job构建,在构建日志中就能够看到插件的打印日志。url

这里介绍的是新建一个插件,对已有插件进行扩展不在本次讨论范围内,更多信息能够参考这里spa

相关文章
相关标签/搜索