weiqi7777

jenkins启动失败

0
阅读(345) 评论(0)

重启jenkins,出现如下问题:

com.thoughtworks.xstream.mapper.CannotResolveClassException: hudson.security.ProjectMatrixAuthorizationStrategy

at ...

Caused: jenkins.util.xstream.CriticalXStreamException: hudson.security.ProjectMatrixAuthorizationStrategy : hudson.security.ProjectMatrixAuthorizationStrategy

---- Debugging information ----

message : hudson.security.ProjectMatrixAuthorizationStrategy

cause-exception : com.thoughtworks.xstream.mapper.CannotResolveClassException

cause-message : husdon.security.ProjectMatrixAuthorizationStrategy

class            : husdon.model.Hudson

required-type : hudson.model.Hudson

converter-type : hudson.util.RobustReflectionConverter

path : /hudson/authorizationStrategy

line number : 15

version : not avaiable

下图是在jenkins网页上显示的内容:

以下是jenkins启动的log信息。

log显示,载入config失败。jenkins在启动的时候,会载入JENKINS_HOME下的config.xml文件。可是在该文件是存在,并且权限也正确。

百度,谷歌,以及试过各种方法,都不能解决该问题。

查看config.xml文件,第15行。这里是设置矩阵授权策略。而设置矩阵授权策略,是需要一个插件matrix-auth。

由此,想起,是不是该插件缺少导致?去查看JENKINS_HOME目录下的plugins目录下的matrix-auth,发现该目录下的WEB-INF目录下为空,说明没有该插件。

问题找到,剩下就是将该插件装上就行了。但是jenkins都不能启动,又如何安装了?

将JENKINS_HOME目录下的config.xml,备份成config.xml.bak,然后删除掉config.xml文件,即可启动jenkins,但是这时候,jenkins使用默认的配置。然后进入到插件管理,将所需插件进行安装。安装完毕后,将jenkins服务关闭,将config.xml.bak还原成config.xml。重新启动jenkins服务,问题解决。