將 gradle 包裝器更新到版本 7.3.2 后,我在嘗試構建 Spring Boot 專案時收到以下錯誤:
error: package org.springframework.context.annotation does not exist
import org.springframework.context.annotation.Bean;
為什么會這樣?
更新:發現問題,但不知道如何解決。我的專案中有多個模塊。我有一個被其他模塊使用的“通用”模塊。在舊的 gradle 版本中,公共專案的庫被添加到其他模塊的 compileClasspath 中,而在新版本中,它只將它們添加到 runtimeClasspath 中。
依賴項過去被宣告為編譯,現在使用 gradle 7 我不得不將它們更改為實作。
有什么建議?
在其他模塊中:
dependencies {
implementation project(':common')
...
}
在通用模塊中:
dependencies {
implementation spring.web
...
}
uj5u.com熱心網友回復:
我認為你有傳遞性問題,如果你使用 java-library 而不是 java 插件
plugins {
id 'java-library'
}
https://docs.gradle.org/current/userguide/java_library_plugin.html#java_library_plugin
然后你可以使用api而不是compile這可以幫助
你看到一個很好的解釋 Gradle 中的 implementation、api 和 compile 之間有什么區別?
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/391911.html
