目标:开发一款Jenkins插件,提供下图的网页界面存储项目构建参数,并保存在Slave打包机上的Jenkins工作目录下,以供后续Job读取使用
image.png
一、开发环境:JDK + MAVEN
开发环境要求:
JDK版本要求在1.6以上,Maven官方要求版本在3以上
- image.png
-
配置文件
C:\Users\xxx.m2文件夹下setting.xml
- 注意如果没有此文件和文件夹请自行创建
- 注意localRepository是mvn依赖库下载存放位置,可以自行指定
<?xml version="1.0" encoding="UTF-8"?>
<settings>
<!-- 指定本地仓库的存放地址,可选 -->
<localRepository>E:\Documents\AppData\maven-repository</localRepository>
<!-- 下面的东西都不用管知道不,只需要copy就ok -->
<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>
- 下载jenkins java开发主程序jenkins.war
https://jenkins.io/zh/download/
image.png
jenkins工作目录默认在C:\Users\xxx.jenkins
需要指定目录请配置环境变量"JENKINS_HOME "
cd 到jenkins.war所在目录,执行jar命令运行
java -jar jenkins.war
注意: 使用vscode,似乎不需要这一步,vscode打开项目后,会自己完成各种依赖的下载
包括jenkins.war
image.png
二、创建Helloworld项目
切换到工作目录,使用下面命令交互式创建项目
mvn archetype:generate -Dfilter=io.jenkins.archetypes:
上面命令正常情况应该在CMD里出现交互式项目创建过程,若长时间卡在Generating project in Interactive mode请常识下面的带参数创建方式
mvn archetype:generate -DarchetypeArtifactId="hello-world-plugin" -DarchetypeGroupId="io.jenkins.archetypes" -DarchetypeVersion="1.5" -DarchetypeCatalog=internal
参数说明
- DarchetypeArtifactId: 插件id,也是项目文件夹名
- DarchetypeVersion: 版本,交互式创建过程中会以列表的形式供选择
三、运行和调试
-
使用vscode(自带maven插件)打开工作目录
等待vscode自动解析pom.xml文件,并完成依赖文件下载。 -
运行/调试
运行
mvn hpi:run
调试
set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,address=8000,suspend=n
mvn hpi:run
在项目根目录.vscode/launch.json配置文件添加JAVA调试配置
{
"version": "0.2.0",
"configurations": [
{
"type": "java",
"name": "Debug (Attach)",
"request": "attach",
"hostName": "localhost",
"port": "8000"
}
]
}
按F5启动Attack模式调试
- 用浏览器访问 http://localhost:8080/jenkins
创建项目并加载Say Hello插件(运行或者调试后,插件已自动安装)
运行查看插件效果(如果是调试启动,可以断点调试)
网友评论