0
我有一個Kotlin彈簧啓動項目here。它有一些測試,從IntelliJ運行得很好,但是當我從命令行運行時,失敗並出現以下錯誤。Kotlin測試失敗從命令行與ClassNotFoundException但從IntelliJ工作
BUILD FAILED in 1m 12s
7 actionable tasks: 7 executed
asarkar:license-report-kotlin$ ./gradlew clean test
> Task :compileKotlin
Using kotlin incremental compilation
> Task :compileTestKotlin
Using kotlin incremental compilation
> Task :test
2017-07-16 21:43:06.345 INFO 2956 --- [ Thread-13] s.c.a.AnnotationConfigApplicationContext : Closing org.spring[email protected]54fa5525: startup date [Sun Jul 16 21:42:04 PDT 2017]; root of context hierarchy
org.abhijitsarkar.ApplicationTest > testEndToEnd FAILED
java.lang.AssertionError at ApplicationTest.kt:83
org.abhijitsarkar.service.GradleAgentTest > initializationError FAILED
java.lang.ClassNotFoundException
org.abhijitsarkar.service.JGitAgentTest > initializationError FAILED
java.lang.ClassNotFoundException
org.abhijitsarkar.service.LinkVerifierTest > initializationError FAILED
java.lang.ClassNotFoundException
4 tests completed, 4 failed
FAILURE: Build failed with an exception.
我試過到目前爲止:
- 來回穿梭的
build.gradle
和build.gradle.kts
之間。 - 將Kotlin運行時添加到罐子
kotlinOptions.includeRuntime = true
。 - 將包級函數更改爲對象中的函數。
我發現奇怪:
- 的
out
目錄中除了通常的搖籃build
目錄中創建。 - 某些類/對象被編譯爲名稱以
Kt
結尾的類文件。我還沒有找到任何押韻或原因,但我還是Kotlin的新手,所以我可能會錯過一些東西。
你說得對。我的項目克隆了一個遠程倉庫,然後構建它,並且在這個過程中它以某種方式刪除了'build'目錄的內容。 –