【问题标题】:Debugging a Jenkins plugin调试 Jenkins 插件
【发布时间】:2014-03-04 14:46:09
【问题描述】:

我们正在使用 Jenkins,并且正在尝试自动部署到我们的 Artifactory 服务器。我们已经下载了 Artifactory 插件,并对其进行了配置,但它不起作用。 “Resolution repository”和“Publishing repository”下的repository列表是空白的。

日志文件中没有任何内容表明存在任何问题。我正在尝试从脚本控制台调用代码,但由于完全缺乏有关创建 Jenkins 插件的文档,我受到了阻碍。有一些教程,但它们没有讨论有关系统如何加载插件的详细信息,或者我如何获得对它们的引用以找出问题所在。

我该如何调试这个东西?

【问题讨论】:

    标签: jenkins jenkins-plugins artifactory


    【解决方案1】:

    您可以从其github location in jenkinsci 下载该插件的源代码

    然后因为这使用了 maven jenkins 插件框架,所以你可以这样做

    mvn hpi:run
    

    从命令行下载所有 jenkins jar 和您需要的其他 jar documentation

    这将为您在 localhost 的 8080 端口上安装测试 jenkins,然后您可以连接到该端口、创建作业、安装插件和运行作业

    我使用 intellij 进行调试。将 intellij 指向 POM 文件,它应该会将所有 maven 命令加载到 maven 工具箱中,从这里您可以通过调试 hpi:run 命令来调试插件。

    您可以使用 eclipse 做类似的事情,或者可能使用 mvnDebug 代替 mvn 并附加远程调试器 https://stackoverflow.com/a/2935475/1213907

    如果插件没有引用 Jenkins Maven 仓库,必须自己添加到pom.xml 或者~/.m2/settings.xml

      <pluginRepositories>
        <pluginRepository>
          <id>repo.jenkins-ci.org</id>
          <url>https://repo.jenkins-ci.org/public/</url>
        </pluginRepository>
      </pluginRepositories>
    

    【讨论】:

    • 谢谢。你说的下载是什么意思?去哪儿?我已经有了 mvn
    • 我的意思是用git clone https://github.com/jenkinsci/artifactory-plugin将github repo克隆到本地目录,然后从创建的目录运行mvn hpi:run
    【解决方案2】:

    关于 Artifactory 插件,尝试保存配置并重新加载作业配置页面。 这背后的逻辑是避免存储库列表过长,一些服务器有多达 100 个本地存储库,这样,通过输入凭据,您可以显示仅相关存储库的列表。 有一个刷新按钮是一个悬而未决的问题,因此在显示列表之前无需保存配置。

    【讨论】:

      【解决方案3】:

      尝试使用 mvnDebug 并将调试器附加到您的 IDE。

      【讨论】:

      • 请详细说明如何实际执行您的建议。 OP 可能不熟悉 mvnDebug 或如何将调试器附加到 IDE。
      猜你喜欢
      • 2013-09-18
      • 1970-01-01
      • 1970-01-01
      • 2020-04-04
      • 2012-10-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多