开发Hudson / Jenkins 插件
程序员文章站
2022-04-30 08:45:58
...
接上篇,有了JFR Report,我们可以通过JMRC分析,但是这样的话还是不够方便,所以想自己开发一个Jenkins插件来解析展示,本文先做个开发前的准备工作:
开发Hudson / Jenkins 插件首先一下准备工作:
1. JDK1.6 或更新版本
2. MAVEN 2
3. maven 库settings设置增加:
<pluginGroups> <!-- pluginGroup | Specifies a further group identifier to use for plugin lookup. <pluginGroup>com.your.plugins</pluginGroup> --> <pluginGroup>org.jvnet.hudson.tools</pluginGroup> <pluginGroup>org.eclipse.hudson.tools</pluginGroup> </pluginGroups>
其中,org.eclipse.hudson.tools是针对hudson插件,org.jvnet.hudson.tools针对jenkin插件,两者貌似一样,最终编译出来的都是hpi插件,其实还是有细微的差别,如果是hudson插件,安装到jenkins上后会出现各种奇怪的问题。
4. 创建plugin项目: mvn org.eclipse.hudson.tools:maven-hpi-plugin:3.0.1:create
期间会让你输入groupid和artifactId,完成之后会生成pom,示例如下:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>org.eclipse.hudson.plugins</groupId> <artifactId>hudson-plugin-parent</artifactId> <!-- which version of Hudson is this plugin built against? --> <version>3.0.0</version> </parent> <groupId>song.test</groupId> <artifactId>hudson-plugin-test</artifactId> <version>1.0-SNAPSHOT</version> <packaging>hpi</packaging> <name>My Hudson Plugin Test</name> </project>
这里又要注意一点,如果你使用的是jenkins,最终可能想要编译出jenkins插件,需要修改pom如下:
<parent> <groupId>org.jenkins-ci.plugins</groupId> <artifactId>plugin</artifactId> <version>1.509</version> </parent> <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>
5. 现在可以创建eclipse配置了: mvn -DdownloadSources=true eclipse:eclipse
可以开始写代码了,具体放到下一篇吧。
推荐阅读
-
dedecms插件开发教程,dedecms插件教程
-
jquery插件开发注意事项小结_jquery
-
基于Maya API和PySide2的插件开发(用TextBrowser实现文件信息的显示)
-
Godot Engine:编辑器插件(Editor Plugin)开发 之 添加一个编辑器按钮
-
vue开发插件
-
分享微信扫码支付开发遇到问题及解决方案-附Ecshop微信支付插件_PHP
-
微信支付之扫码支付开发:我遇到的坑及解决办法(附:Ecshop 微信支付插件),ecshop
-
jQuery插件如何开发?Jquery插件的编写及使用分享
-
在Eclipse JavaEE开发环境上集成GlassFish开发插件(截图多多)
-
iOS Swift开发之日历插件开发示例