greadle.properties
を弄る
ビルド・テストで全論理コア使われると他アプリの動作が重くなるので、kotlin.test.junit5.maxParallelForks
を全論理コア数 - 最低限確保したい論理コア数
にしていいかも。
以前はJDK7
以前を無視するオプションも有ったがいつの間にか消えていた。
各バージョンのJDK
へのパス周り
gradle.properties
のorg.gradle.java.installations.fromEnv
には各バージョンのJDK
へのパスを示す環境変数が定義されている。
環境変数に対応する値を追加するか、無視する場合は消す。
# Please keep it in sync with root gradle.properties. # It's currently needed for proper configuration cache work, the reason will be investigated later org.gradle.java.installations.fromEnv=\ JDK_1_8,JDK_18,\ JDK_9_0,JDK_9,\ JDK_10_0,JDK_10,\ JDK_11_0,JDK_11,\ JDK_15_0,JDK_15,\ JDK_16_0,\ JDK_17_0
テスト周り
変更
kotlin-reflect
関連はcompiler/testData/codegen/box/reflection
に有る。
特にテスト追加のような変更後はgenerateTests
(IDE
に保存されている内だとGenerators
-> GenerateTests
)を実行することで、各環境向けテスト生成を行う(この結果もコミットが必要)。
実行
kotlin
-> tasks
-> verification
-> codegenTarget8JvmXXTest
を実行すれば最低限の確認は出来る。
~JvmXXTest
のバージョンはProject Structure
のSDK
に指定されたJDK
のバージョンに合わせるのが良いと思われる(例: codegenTarget8Jvm11Test
)(確証は無いが、gradle
側的に要求されているJava 11
に合わせた状態でcodegenTarget8Jvm8Test
を実行したら失敗するものが出てきてしまった)。
成果物の生成先
kotlin-reflect
のjar
はlibraries/reflect/build/libs/kotlin-reflect-${バージョン}-SNAPSHOT-sources.jar
に出力される。
ベンチマーク等を取る時はこの辺りを使う。