返回
IntelliJ Idea 中 “Could not find method compileOnly()” 错误的终极解决方案
java
2024-03-03 02:50:52
在 IntelliJ Idea 中解决“Could not find method compileOnly()”错误
简介
在 IntelliJ Idea 中构建 Liferay Portlet 服务时,你可能遇到 “Could not find method compileOnly()” 错误。这是因为 Gradle 找不到 compileOnly()
方法。本教程将指导你更新 Gradle 版本并解决此问题。
更新 Gradle 版本
- 转到 IntelliJ Idea 中的“文件”>“设置”>“构建、执行、部署”>“Gradle”。
- 在“Gradle JDK”下,选择 Gradle 的最新版本(7.0+)。
- 单击“应用”和“确定”。
将依赖项更新为“api”
在 Gradle 7.0+ 中,compileOnly()
已弃用。你应将依赖项更新为 api
:
dependencies {
api group: "com.liferay", name: "com.liferay.petra.lang", version: "5.2.1"
api group: "com.liferay", name: "com.liferay.petra.string", version: "5.3.4"
api group: "com.liferay", name: "com.liferay.portal.aop.api", version: "3.0.5"
api group: "com.liferay.portal", name: "com.liferay.portal.kernel", version: "13.0.0"
api group: "org.osgi", name: "org.osgi.annotation.versioning", version: "1.1.2"
api group: "org.osgi", name: "org.osgi.core", version: "6.0.0"
api group: "org.osgi", name: "org.osgi.service.component.annotations", version: "1.5.1"
api group: "com.liferay", name: "com.liferay.osgi.util", version: "8.1.0"
api group: "javax.portlet", name: "portlet-api", version: "3.0.1"
api group: "org.slf4j", name: "slf4j-api", version: "1.7.2"
}
同步 Gradle
在 IntelliJ Idea 中,单击“Gradle”工具窗口中的“同步项目”按钮。
重新构建项目
在 IntelliJ Idea 中,单击“构建”>“重新构建项目”。
结论
遵循这些步骤,你应该能够在 IntelliJ Idea 中成功导入 Gradle 依赖项,而不会出现 compileOnly()
错误。
常见问题解答
-
为什么需要更新 Gradle 版本?
答:Gradle 7.0+ 已弃用compileOnly()
方法。 -
什么是
api
依赖项?
答:api
依赖项是编译时和运行时所需的依赖项。 -
如何同步 Gradle?
答:在 IntelliJ Idea 中,“Gradle”工具窗口中单击“同步项目”按钮。 -
为什么需要重新构建项目?
答:重新构建项目可确保更改反映在构建中。 -
如果我仍然遇到错误怎么办?
答:请查看 IntelliJ Idea 中的“构建”工具窗口中的错误消息,并相应地进行故障排除。