java - 我可以在不使用 Jenkins UI 的情况下运行 jenkins 插件吗?

标签 java jenkins

我继承了一个一级 Jenkins 插件。它从 Jenkins hudson 命名空间导入一堆东西。我看到 pom.xml

<parent>
    <groupId>org.jenkins-ci.plugins</groupId>
    <artifactId>plugin</artifactId>
    <version>1.583</version>
    <relativePath />
</parent>

该插件读取文件并调用 API。我希望能够在 jenkins 之外运行该类,这样我就可以在本地修改和测试 API 调用,而不必每次都创建一个新的 hpi 并上传到 Jenkins - 甚至必须退出我的终端。

我有一个 test.java 文件,我想在其中实例化该类并运行一些方法。

从我的终端运行这个: javac -cp '.:target/what-maven-exported.jar' foo.java && java Foo

我收到一个错误,无法访问Recorder,因为找不到 hudson.tasks.Recorder 的类文件

我的要求完全不可能吗?或者我可以在本地伪造父 POM 吗?我尝试这样做,但很快就迷路了,它会说 jar 是空的。

最佳答案

Plugin Tutorial 中所述,您可以使用 hpi:run maven 目标来启动预安装插件的 Jenkins 实例:

mvn hpi:run

这对我破解插件时非常有帮助。我认为这就是您“本地运行”的实际含义;-)

关于java - 我可以在不使用 Jenkins UI 的情况下运行 jenkins 插件吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45804766/

相关文章:

java - Hbase byteArray 转 Long

java - 表示 xsd 架构中的列表

java - 由于JDK功能不受支持,Jenkins Maven编译失败?

jenkins - 我应该如何在前端验证 Jenkins 构建参数以启用/禁用构建按钮?

mercurial - 为什么 jenkins mercurial 插件会忽略 merge ?

python - 如何在 Jenkins 中创建一个通用函数来执行 python 脚本

Jenkins htmlpublisher 问题

java - 如何不断找到鼠标相对于面板的位置?

java - 构建失败 : org. codehaus.groovy.control.MultipleCompilationErrorsException

java - 如何避免流中出现空值