我有一个安装了最新神器插件的jenkins实例。我也有神器的源代码,我已经修改了我的新用法。由于我想测试它,我希望它与原始的artifactory插件共存,以便我可以并排比较。我已经更改了UI中的名称空间,因此它们不会发生冲突。
问题 - 当我尝试上传我的插件时,它会覆盖原始的神器插件,以某种方式将其视为相同的插件。我继续将插件中的pom.xml中的工件名称/项目名称更改为不同,但现在它给了我错误 - "attempt to register a second Permission for ..."
这可以追溯到jenkins源代码 - https://github.com/jenkinsci/jenkins/blob/81701326a0ad2f07862bb034f9fb08be52f95608/core/src/main/java/hudson/security/PermissionGroup.java
有关如何使其成为可能的任何指示?
答案 0 :(得分:1)
发生该错误是因为两个插件都在ArtifactoryPlugin
类中定义了相同的权限组。
但即使你解决了这个问题,如果Jenkins设法成功加载两个插件,我会感到惊讶,因为它们都具有相同的Java包名。即使它们确实加载,在尝试加载或配置作业时,由于此冲突,您还会遇到其他冲突。如果你然后解决了这个问题,那么由于两个插件具有相同的依赖关系,你可能会遇到类加载问题。
如果你想同时测试两个版本,我会运行两个独立的Jenkins实例
例如您的开发版本为mvn hpi:run
正常,另一个为java -jar jenkins.war --httpPort=8081
。