jenkins——遇到的一个大坑,构建时候找不到目录,但是ide中运行是ok的

问题描述:
ide运行测试脚本ok,但是集成到jenkins中就遇到了找不到
报错:
在这里插入图片描述
如何解决:
找了一天在百度都没有能找到原因,经过各种调试终于解决
原因分析:可能和我给jenkins加了环境变量有关系 我把工程目录设成了环境变量 用于解决jenkins执行时候找不到模块的问题。
解决方法:我把代码中涉及到工程目录这块的代码(1、2行代码)直接干掉,直接写成第三行的代码,成功!
1report_dir = os.path.dirname(os.path.dirname(file))
2 report_name = report_dir + “/ReportHtml”+ “/result.txt”
3 report_name = “ReportHtml/result.txt”
在这里插入图片描述

### Jenkins打包时提示缺少Jar包的解决方案 当Jenkins在执行Maven构建过程中报告无法到某些依赖的Jar包,即使这些依赖已经在Maven中正确配置,可能的原因包括但不限于以下几个方面: #### 1. Maven设置文件未正确定位到私库配置 如果项目的部分依赖存储于公司内部的私有仓库(如Nexus或Artifactory),而Jenkins所使用的`settings.xml`文件并未包含相应的私库认证信息,则可能导致依赖下载失败。因此,在Jenkins全局工具配置或者具体Job配置中,需指定正确的Maven `settings.xml`路径[^1]。 #### 2. 构建环境中的本地仓库缓存问题 有时由于网络原因或其他因素,可能会导致某些依赖未能成功下载至Jenkins节点上的`.m2/repository`目录。此时可以尝试清理并重建本地仓库: ```bash rm -rf ~/.m2/repository/<groupId>/<artifactId> mvn clean install ``` 上述命令会删除特定依赖的历史记录,并强制重新拉取最新版本[^3]。 #### 3. 插件冲突引发加载异常 对于集成复杂框架的应用程序来说,可能存在不同插件之间相互干扰的情况。例如Groovy脚本引擎缺失即是一个典型例子——当项目引入了Xxl-Job调度组件后却遭遇`NoClassDefFoundError: GroovyClassLoader`错误时,通常是因为相关类库尚未被正确装配进classpath之中[^2]。对此可考虑显式声明所需运行时支持作为额外依赖项加入POM文件内。 #### 4. 转型期间遗留下来的混乱定义 倘若当前工程是从传统的Ant/Ivy体系逐步迁移到现代Gradle/Maven架构下的产物的话,那么其根级描述符(build script)里很可能会残留一些冗余条目或者是不兼容的标准语法结构[^4]。这种状况下建议逐一审查所有参与编译过程的关键参数设定值是否存在矛盾之处;另外也可以借助IDE内置功能辅助完成重构操作从而简化整体布局逻辑。 综上所述,针对此类现象可以从调整外部资源配置入手直至深入排查内部实现细节为止进行全面诊断处理直到彻底消除隐患为止。 ```xml <dependency> <groupId>org.codehaus.groovy</groupId> <artifactId>groovy-all</artifactId> <version>3.0.9</version><!-- 或者其他适配版本 --> </dependency> ``` 以上代码片段展示了如何通过增加必要的第三方扩展来规避潜在风险的一个实例演示效果展示出来供大家参考学习借鉴使用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值