Multipliform Bibrary Publishing. Не могу использовать классы в CommonMainAndroid

Форум для тех, кто программирует под Android
Ответить Пред. темаСлед. тема
Anonymous
 Multipliform Bibrary Publishing. Не могу использовать классы в CommonMain

Сообщение Anonymous »

Я создал чистую библиотеку KMM без использования функций, специфичных для платформы. Весь код только в общей номере. Это простой класс: < /p>
class TemperatureConverter {
fun celsiusToFahrenheit(celsius: Double): Double {
return celsius * 1.8 + 32.0
}

fun fahrenheitToCelsius(fahrenheit: Double): Double {
return (fahrenheit - 32.0) / 1.8
}

val simpleString : String = "SimpleString"

}
< /code>
Я публикую эту библиотеку в Mavenlocal. В папке .m2 я вижу опубликованный артефакт AAR и файл POM. Я также вижу все платформы, которые перечислены в целях. Вот пример build.gradle.kts всего проекта библиотеки KMM: < /p>
plugins {
id("com.android.library").version("8.0.2").apply(false)
kotlin("multiplatform").version("1.9.24").apply(false)
id("maven-publish")
}

buildscript {
repositories {
google()
mavenCentral()
mavenLocal()
}
}

afterEvaluate {
publishing {
publications {
create("release") {
groupId = "com.ag.secondTry"
artifactId = "test-lib-second"
version = "1.0.13"
artifact("C:\\KotlinSamples\\KotlinLibs\\TestLib\\sharedMpTest\\build\\outputs\\aar\\sharedMpTest-debug.aar")
}
}
}
}

allprojects {
repositories {
google()
mavenCentral()
mavenLocal()
maven { url = uri("https://jitpack.io") }
}
}

tasks.register("clean", Delete::class) {
delete(rootProject.buildDir)
}
< /code>
Далее приведен пример build.gradle.kts общий модуль библиотеки KMM: < /p>
plugins {
kotlin("multiplatform")
kotlin("native.cocoapods")
id("com.android.library")
id("maven-publish")
}

@OptIn(org.jetbrains.kotlin.gradle.ExperimentalKotlinGradlePluginApi::class)
kotlin {
applyDefaultHierarchyTemplate()

androidTarget {
publishLibraryVariants("release", "debug")
compilations.all {
kotlinOptions {
jvmTarget = "17"
}
}
}
androidTarget()
iosX64()
iosArm64()
iosSimulatorArm64()

cocoapods {
summary = "Some description for the Shared Module"
homepage = "Link to the Shared Module homepage"
version = "1.0"
ios.deploymentTarget = "14.1"
framework {
baseName = "sharedMpTest"
}
}

sourceSets {
val commonMain by getting {
dependencies {
//put your multiplatform dependencies here
}
}
}
}

android {
namespace = "com.ag.kmmtestlib"
compileSdk = 33
defaultConfig {
minSdk = 21
}
compileOptions {
sourceCompatibility = JavaVersion.VERSION_17
targetCompatibility = JavaVersion.VERSION_17
}
< /code>
В другом многоплатформенном проекте я подключаю эту библиотеку к общему модулю и не могу использовать свой класс TemperatureConverter в CommonMain. Он доступен только в Androidmain. Что я должен сделать, чтобы сделать этот класс доступным в Commonmain?
Если я удалю артефакт из build.gradle.>

Подробнее здесь: https://stackoverflow.com/questions/786 ... commonmain
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Публикация мультиплатформенной библиотеки Kotlin. Не могу использовать классы в commonMain
    Anonymous » » в форуме Android
    0 Ответы
    25 Просмотры
    Последнее сообщение Anonymous
  • Ошибка при установке AutoTrain-Advanced Bibrary Python на SageMaker AI
    Anonymous » » в форуме Python
    0 Ответы
    5 Просмотры
    Последнее сообщение Anonymous
  • Как опубликовать модуль KMM, чтобы использовать его в другом проекте KMM в commonMain
    Anonymous » » в форуме Android
    0 Ответы
    53 Просмотры
    Последнее сообщение Anonymous
  • Многоплатформенный мобильный контекст Kotlin в CommonMain
    Гость » » в форуме Android
    0 Ответы
    32 Просмотры
    Последнее сообщение Гость
  • Многоплатформенный мобильный контекст Kotlin в CommonMain
    Гость » » в форуме IOS
    0 Ответы
    27 Просмотры
    Последнее сообщение Гость

Вернуться в «Android»