美文网首页devops
Jenkins插件开发

Jenkins插件开发

作者: 莫问君心 | 来源:发表于2019-01-04 10:21 被阅读0次

    最近要开发一个Jenkins的插件,碰着不少坑,趁着映像还深记录下来。
    也可以作为小白入门参考。

    安装基本参考Jenkins官方文档来做的


    环境准备:
    • Maven 3.x(命令行执行mvn -v可看到版本)
    • JDK 1.8
    • IDEA/Eclipse

    Maven配置

    修改settings.xml文件,分别添加以下三处配置:

    <pluginGroups>
      <pluginGroup>org.jenkins-ci.tools</pluginGroup>
    </pluginGroups>
    
    <profiles>
      <profile>
        <id>jenkins</id>
        <activation>
          <activeByDefault>true</activeByDefault>
        </activation>
        <repositories>
          <repository>
            <id>repo.jenkins-ci.org</id>
            <url>https://repo.jenkins-ci.org/public/</url>
          </repository>
        </repositories>
        <pluginRepositories>
          <pluginRepository>
            <id>repo.jenkins-ci.org</id>
            <url>https://repo.jenkins-ci.org/public/</url>
          </pluginRepository>
        </pluginRepositories>
      </profile>
    </profiles>
    
    <mirrors>
      <mirror>
        <id>repo.jenkins-ci.org</id>
        <url>https://repo.jenkins-ci.org/public/</url>
        <mirrorOf>m.g.o-public</mirrorOf>
      </mirror>
    </mirrors>
    

    创建插件项目

    选择以下两条maven命令中的一条生成Jenkins插件代码,过程中会提示你选择archtype及其版本信息等。
    小白选手请选择生成hello-world-plugin,以便于理解如何玩转插件开发。

    #生成helloworld插件
    mvn archetype:generate -Dfilter=io.jenkins.archetypes:hello-world-plugin
    #生成空插件项目
    mvn archetype:generate -Dfilter=io.jenkins.archetypes:empty-plugin
    

    注意:执行该命令可能会得到以下结果,并不出现提示交互,也不会生成maven项目。

    [INFO] Generating project in Interactive mode
    [WARNING] No archetype found in remote catalog. Defaulting to internal catalog
    [INFO] Your filter doesn't match any archetype, so try again with another value.
    [INFO] ------------------------------------------------------------------------
    [INFO] BUILD SUCCESS
    [INFO] ------------------------------------------------------------------------
    [INFO] Total time: 26.228 s
    [INFO] Finished at: 2018-12-11T16:01:32+08:00
    [INFO] ------------------------------------------------------------------------
    

    这是因为maven在本地仓库根目录archetype-catalog.xml文件中没找到groupId为io.jenkins.archetypes的archetype,之后会在远端仓库的该文件中查找,如果还是没找到则出现上述问题。

    解决方法:将archetype-catalog.xml文件下载到本地Maven仓库根目录即可,获取地址:
    http://repo1.maven.org/maven2/archetype-catalog.xml
    如果添加后,archetype-catalog.xml文件并未生效,可以在Maven的命令参数中指定该文件,命令示例:

    mvn archetype:generate -Dfilter=io.jenkins.archetypes: -DarchetypeCatalog=file:///D:/repository/archetype-catalog.xml
    

    之后即可进入刚刚生成的项目目录,执行打包。

    mvn package
    

    相关文章

      网友评论

        本文标题:Jenkins插件开发

        本文链接:https://www.haomeiwen.com/subject/mdpehqtx.html