0
私はKotlin Spring Bootプロジェクト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
の間に行ってきました。 - jotにKotlinランタイムを追加しました
kotlinOptions.includeRuntime = true
。 - パッケージレベルの関数をオブジェクト内の関数に変更しました。私は奇妙見つけたもの
:
out
ディレクトリは、通常のGradlebuild
ディレクトリに加えて作成されます。- 一部のクラス/オブジェクトは、末尾が
Kt
のクラスファイルにコンパイルされます。私はこれについての韻や理由は見つけられませんでしたが、私はまだコトリンには新しいので、何かが欠けているかもしれません。
あなたはそうです。私のプロジェクトはリモートリポジトリをクローンしてからビルドしますが、その過程で 'build'ディレクトリの内容を何とか削除していました。 –