【问题标题】:What is difference between .hpi and .jpi of Jenkins plugins?Jenkins 插件的 .hpi 和 .jpi 有什么区别?
【发布时间】:2015-06-05 04:29:48
【问题描述】:

我以两种方式安装了 Jenkins 插件,即手动将 .hpi 文件保存在 Jenkins 主目录中,以及从 Jenkins 前端安装(管理 Jenkins > 管理插件)。

我在这里注意到的是,当我手动安装插件(下载为 .hpi 文件)时,它安装了扩展名 .hpi,并且在通过 Jenkins 前端安装插件时,我注意到插件再次安装为 .jpi

但是为什么呢?后台发生了什么?我知道功能不会改变,但知道它看起来很有趣。

【问题讨论】:

    标签: jenkins jenkins-plugins


    【解决方案1】:

    当您按照您所说的手动安装时,两者都应该与 Jenkins 将 hpi 重命名为 jpi 的扩展相同。

    您在 JENKINS_HOME 中看到两者的原因是 Jenkins 启动时加载插件的顺序:plugin.jpi 优先于 plugin.hpi,以防两者都存在。这是上传安装确保重新启动后上传的版本会覆盖现有版本的方式。

    【讨论】:

      【解决方案2】:

      嗯,我认为是因为Jenkins forked from Hudson 所以这是 hpi 中的“H”。 J 显然是对它的改变。

      在技术方面,jpi插件使用gradle plugin architecture生成,hpi插件使用Maven architecture生成

      最终,您发现 Jenkins 可以使用这两个生成插件。绝大多数是使用 Maven 构建的,但我是 Gradle 的粉丝,因为它与 Groovy 中的开发插件很好地结合在一起。您还可以使用 Maven 在 Groovy 中构建

      【讨论】:

      • .hpi 与 .jpi 与使用的构建工具无关(Maven 与 Gradle)
      • 答案 2 是正确的 - 我不能删除它接受的答案
      【解决方案3】:

      $JENKINS_HOME/plugins/ 中的插件应始终使用.jpi 后缀(基本名称为插件标识符)。通常,即使在 uploading a plugin manually 时,Jenkins 也会强制执行此命名模式,无论您用于上传的文件名是什么,所以我不确定您是如何在这里拥有 *.hpi 文件的,除非您直接将其复制到此文件系统位置。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-03-28
        • 1970-01-01
        • 2017-05-19
        • 2023-03-23
        • 2012-12-07
        相关资源
        最近更新 更多