jenkins - 如何从 groovy 中当前包的上一层导入 - 详解
问题描述
我有一个与此处描述的问题非常相似的问题: 如何从 groovy 中当前包的上一层导入
我不想将 SharedState 移动到 action/pkg 子目录。我想要做的是保持以下结构:
- 常规/动作/TestDataHelper
- groovy / action2 / TestDataHelper2
- groovy / action3 / SharedState
然后从 TestDataHelper 和 TestDataHelper2 访问 SharedState。
我无论如何都不能使用包来做到这一点,我倾向于理解默认情况下是不可能的。我可以改用类路径恶作剧,但首先需要一些指导。
感谢您的任何反馈。
解决方案
答案是在构建中的 Jenkins 作业种子作业 - 高级部分中使用额外的类路径。该路径需要与项目的母目录匹配。
/home/user/mother_dir
groovy 脚本可以位于 /home/user/mother_dir 下的任何位置,在我的情况下它位于 /home/user/mother_dir/other_dir/script.groovy
然后,我将要导入的类放在 /home/user/mother_dir/package_dir 的包中。在与作业映射的 groovy 脚本中,我导入 package.* 并可以从 package_dir 访问所有必要的类。
推荐阅读
- python - 将我当前的工作目录更改为另一个目录,包括空格
- assembly - Mips 数组的元素
- qt - 在 qmake 中允许未定义的符号
- angular - 如何在 Ionic 4 中通过 Airplay 在 iPad 和电视上播放视频
- angular - 我需要有关 Angular 表单的帮助
- javascript - 如何重现google登录表单效果
- here-olp - 有没有办法删除 HERE 易失性层而无需核对整个目录/权限?
- android - 扫描后如何将我的条形码扫描仪结果保存到文本视图
- machine-learning - 将 Keras 代码转换为 PyTorch 代码(整形)的问题
- python - 查询 cassandra 对象映射器