问题描述
在使用 Jenkins 容器(版本 2.138.1)中的一个流水线时,遇到了以下错误:
11:23:17 ERROR: (int_dbp_ci.groovy, line 7) No such property: IntDBCIProperties for class: int_dbp_ci
奇怪的是,在同一台机器上的另一个 Jenkins 容器中,对于相同的作业、相同的语法和插件版本,它是正常工作的。有没有什么想法是什么原因导致了这个问题?
解决方案
请注意以下操作注意版本差异及修改前做好备份。
方案1
这个问题可能是由于全局安全配置中的一个选项引起的,即“为作业 DSL 脚本启用脚本安全性”。你可以尝试取消选中这个选项来解决问题。
以下是取消选中该选项的步骤:
1. 打开 Jenkins 管理界面。
2. 点击 “Manage Jenkins”。
3. 点击 “Configure Global Security”。
4. 在 “Script Security” 部分,取消选中 “Enable script security for job DSL scripts” 选项。
5. 点击 “Save” 保存更改。
请注意,取消选中该选项可能会降低脚本的安全性,请确保你只在可信任的环境中使用此选项。
方案2
如果方案1 不起作用,你可以尝试重新安装或升级相关的插件,以确保插件版本与其他正常工作的 Jenkins 容器相同。
你可以按照以下步骤重新安装或升级插件:
1. 打开 Jenkins 管理界面。
2. 点击 “Manage Jenkins”。
3. 点击 “Manage Plugins”。
4. 在 “Installed” 选项卡中,找到并选择相关的插件。
5. 点击 “Uninstall” 或 “Update” 按钮,根据需要进行卸载或升级。
6. 重新启动 Jenkins 容器以使更改生效。
请注意,在重新安装或升级插件之前,建议先备份 Jenkins 配置和相关数据,以防止意外数据丢失。
方案3
如果以上两个方案都不起作用,你可以尝试创建一个最小可重现的示例,以便更好地理解问题并寻求帮助。你可以按照以下步骤创建最小可重现的示例:
1. 创建一个新的 Jenkins 流水线作业。
2. 在作业中使用与出现问题的作业相同的语法和插件版本。
3. 尽可能简化作业的配置和脚本,只保留与问题相关的部分。
4. 尝试运行新创建的作业,查看是否仍然出现相同的错误。
5. 如果错误仍然存在,请将最小可重现的示例提供给 Jenkins 社区或相关的技术支持团队,以便他们能够更好地帮助你解决问题。
请注意,创建最小可重现的示例可能需要一些时间和努力,但它可以帮助你更好地理解问题,并为其他人提供更准确的帮助。