在Jenkins中安装ruby运行时错误

Blu*_*sea 4 ruby cucumber jenkins

我尝试在Jenkins中安装ruby运行时,rvm,cucumber插件,

在安装ruby运行时插件时,遇到此错误:

java.io.IOException: Failed to dynamically deploy this plugin
    at hudson.model.UpdateCenter$InstallationJob._run(UpdateCenter.java:1328)
    at hudson.model.UpdateCenter$DownloadJob.run(UpdateCenter.java:1126)
    at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
    at java.util.concurrent.FutureTask.run(Unknown Source)
    at hudson.remoting.AtmostOneThreadExecutor$Worker.run(AtmostOneThreadExecutor.java:110)
    at java.lang.Thread.run(Unknown Source)
Caused by: java.io.IOException: Failed to install ruby-runtime plugin
    at hudson.PluginManager.dynamicLoad(PluginManager.java:487)
    at hudson.model.UpdateCenter$InstallationJob._run(UpdateCenter.java:1324)
    ... 5 more
Caused by: java.io.IOException: Failed to initialize
    at hudson.ClassicPluginStrategy.load(ClassicPluginStrategy.java:441)
    at hudson.PluginManager.dynamicLoad(PluginManager.java:478)
    ... 6 more
Caused by: java.lang.ClassCircularityError: org/jruby/RubyClass
    at java.lang.Class.forName0(Native Method)
    ...
Run Code Online (Sandbox Code Playgroud)

如何解决?提前致谢

在此处输入图片说明

lvt*_*llo 5

这是一个已知的错误。有一种解决方法:

/etc/default/jenkins

-Dhudson.ClassicPluginStrategy.noBytecodeTransformer=true 

JAVA_ARGS="$JAVA_ARGS -Dhudson.ClassicPluginStrategy.noBytecodeTransformer=true"
Run Code Online (Sandbox Code Playgroud)

如您所见,目前还没有确定的解决方案。


小智 1

在 OSX 上我必须编辑/Library/Application Support/Jenkins/jenkins-runner.sh

javaArgs在定义后的某个点添加这些行

# workaround for ruby runtime install issue
# per http://stackoverflow.com/questions/33883551/error-installing-ruby-runtime-in-jenkins
javaArgs="$javaArgs -Dhudson.ClassicPluginStrategy.noBytecodeTransformer=true"
Run Code Online (Sandbox Code Playgroud)

可能有一种更 Mac 式的方法来做到这一点。

重新启动 Jenkins 后,已经下载的 ruby​​ 运行时插件开始工作,同时下载的 rvm 插件也开始工作,这就是我想要的。