Обновление:
В ходе дальнейшего расследования я обнаружил проблему
https://youtrack.jetbrains.com/issue/KT- 66523/jvmMain-resources-classpath-is-not-added-when-using-the-multiplatform-project-as-a-module
Путь к классу ресурса не добавляется при использовании путем добавления
Код: Выделить всё
implementation(project(":sevenzipJavm"))
Итак, теперь, если проблема не устранена JetBrains, лучшим решением на данный момент является использовать проект как jar вместо классов.
но это приводит нас к новой проблеме, поскольку, похоже, нет простого способа добавления в виде jar. даже когда я это делаю
Код: Выделить всё
implementation(files("../sevenzipJavm/build/libs/sevenzipJavm-jvm.jar"))
Код: Выделить всё
implementation(files("D:/x/sevenzipJavm-jvm.jar"))
Поэтому я также обновил заголовок проблемы. .
Опять же, не показывайте мне, как добавить проект в виде классов, а как jar, а не статически, перемещая его в другое место.
Старый вариант для справки:
Кажется, я не могу получить доступ к ресурсам src\jvmMain\resources\a.txt в jvmMain многоплатформенного проекта.
gradle kts:
Код: Выделить всё
plugins {
alias(libs.plugins.kotlinMultiplatform)
alias(libs.plugins.android.library)
// id("module.publication")
}
kotlin {
applyDefaultHierarchyTemplate()
jvm()
androidTarget {
publishLibraryVariants("release")
compilations.all {
kotlinOptions {
jvmTarget = "1.8"
}
}
}
// iosX64()
// iosArm64()
// iosSimulatorArm64()
// linuxX64()
sourceSets {
commonMain.dependencies {
}
commonTest.dependencies {
implementation(libs.kotlin.test)
}
androidMain.dependencies {
}
jvmMain {
dependencies {
}
}
}
}
android {
namespace = "org.jetbrains.kotlinx.multiplatform.library.sevenZip"
compileSdk = libs.versions.android.compileSdk.get().toInt()
defaultConfig {
minSdk = libs.versions.android.minSdk.get().toInt()
}
}
Код: Выделить всё
val message =
Thread.currentThread().contextClassLoader.getResource("a.txt")?.readText()
println(message)
This code works on pure JVM projects if is not inside multiplatform.
Источник: https://stackoverflow.com/questions/781 ... -depndency