1 回答

TA貢獻1829條經(jīng)驗 獲得超6個贊
這是我在 IDEA 中看到的:
所以也許你想更具體一些并在 GitHub 上分享一個MCVE,即一個完整的 Maven 項目,其中包含一些虛擬類和測試(Spock 和 JUnit),供我檢查。
更新:在我的叉子中檢查并修復(fù)你的 MCVE 之后,我可以解釋哪里出了問題:
您用于 Spock 測試的 MCVE 文件夾是“src/test/spock”。我將它重命名為“src/test/groovy”,以便 GMavenPlus 能夠找到它。這修復(fù)了 Groovy 測試編譯。
在您的 POM 中,您手動覆蓋了三個 JUnit Jupiter 工件的依賴版本,但向
mvn help:effective-pom
我展示了一些其他工件仍在 5.3.2 上,而您的版本是 5.5.1。我不確定為什么你認為你需要更新它們而不是希望成為最前沿的并始終使用最新版本。無論如何,有效的 POM 還表明在您的父 POM 中有這些與 JUnit 相關(guān)的版本屬性:
<junit-jupiter.version>5.3.2</junit-jupiter.version> <junit.version>4.12</junit.version>
更確切地說,這些屬性來自您的父 POM自己的父 POM。剩下的很簡單:只需覆蓋您自己的 POM 中的相關(guān)屬性即可:
<properties> ??<junit-jupiter.version>5.5.1</junit-jupiter.version> ??</properties>
現(xiàn)在運行mvn clean test
并看到正在編譯和運行 JUnit 和 Spock 測試。從上面的屏幕截圖中的 IntelliJ IDEA 運行測試現(xiàn)在也可以使用。
添加回答
舉報