gradle执行编译报错找不到compile()

用了jenkins后最怕看见what went wrong,不过fix之后又觉得很爽,以下是关于使用gradle在jenkins上打包,但是执行后出现报错的一种解决方案

问题

* What went wrong:
A problem occurred evaluating root project 'XXX'.
> Could not find method compile() for arguments [directory 'common/libs'] on object of type org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler.

 解决方案

首先,可以看到问题所在的目录是编译的关键文件gradle.build,line95行,报错找不到compile()这个方法,于是我们找到这行,把方法改成implementation() ,即可解决。

但是关于这种方法名字的变更是否会产生什么影响还不知道,两者的区别,百度答案是一个是公开依赖,另一个是非公开,implementation()是后者,暂且先记录临时的解决方案吧。

最新解决方案

经过不懈努力,终于弄懂了为什么compile()会报错找不到,是因为gradle的版本太高了,已经不适用compile啦,所以我们换低版本的gradle构建就可以解决问题了。

 

### 解决 Intellij IDEA Java Spring Boot 项目编译错误 “不到符号” 在处理IntelliJ IDEA中运行Java Spring Boot项目时遇到的“不到符号”的编译错误,通常这类问题是由于某些类文件未能正确编译至`target`目录所引起[^1]。当多个地方报告相同的错误提示,并且确认源码本身无误,则应考虑构建过程中的配置问题。 #### 验证项目结构 确保项目的模块路径和依赖关系已正确定义于`pom.xml`或`build.gradle`文件内。对于Maven项目而言,任何外部库都应当通过相应的坐标声明并由Maven统一管理版本号以及下载安装到本地仓库中。 #### 清理与重新构建工程 尝试执行清理操作来移除旧有的编译产物: ```bash mvn clean install -U ``` 上述命令不仅会清除现有的目标文件夹(`target`)内的内容,还会强制更新所有过期的依赖项。这有助于排除因缓存残留而引发的一系列潜在冲突。 #### 启用自动Make功能 为了防止手动触发Build动作带来的不便,在IDEA里可以开启自动编译选项。前往菜单栏选择 `File -> Settings (Ctrl+Alt+S)` ,导航至 `Build, Execution, Deployment -> Compiler` 下勾选 `Compile independent modules in parallel` 和 `Use '--incremental' compilation option for Make` 。此外还需检查 `Build project automatically` 是否处于激活状态[^3]。 #### 检查Module SDK配置 有时开发环境可能选择了不合适的SDK版本作为默认解释器,从而影响到了字节码生成环节。进入 `Project Structure (Ctrl+Alt+Shift+S)` 查看当前使用的JDK是否匹配Spring Boot应用的需求规格说明文档里的建议值。 #### 更新插件和支持包 保持工具链组件始终处在最新稳定版能够有效减少兼容性隐患的发生几率。特别是像Lombok这样的第三方增强型框架更需注意其迭代进度,及时同步对应的处理器程序以保障注解解析机制正常运作。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值