KorGE

    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    1. Home
    2. Rainer
    R
    • Profile
    • Following 0
    • Followers 0
    • Topics 1
    • Posts 4
    • Best 0
    • Controversial 0
    • Groups 0

    Rainer

    @Rainer

    0
    Reputation
    1
    Profile views
    4
    Posts
    0
    Followers
    0
    Following
    Joined Last Online

    Rainer Unfollow Follow

    Latest posts made by Rainer

    • RE: Adding external Libraries

      Thanks for this hint.

      I added the kotlinx serilization and appled the plugin, resulting in this build.gradle.kts:

      import com.soywiz.korge.gradle.*
      
      buildscript {
      	val korgeVersion: String by project
      	val kotlinVersion: String by project
      
      	repositories {
      		mavenLocal()
      		maven { url = uri("https://dl.bintray.com/korlibs/korlibs") }
      		maven { url = uri("https://plugins.gradle.org/m2/") }
      		maven { url = uri( "https://dl.bintray.com/kotlin/kotlin-dev/")}
      		mavenCentral()
      	}
      	dependencies {
      		classpath("com.soywiz.korlibs.korge.plugins:korge-gradle-plugin:1.13.2.3")
      		classpath("org.jetbrains.kotlin:kotlin-serialization:$kotlinVersion")
      	}
      }
      
      apply<KorgeGradlePlugin>()
      apply(plugin = "kotlinx-serialization")
      
      korge {
      	id = "com.example.example"
      }
      
      repositories {
      	mavenCentral()
      	mavenLocal()
      }
      
      dependencies {
      	add("commonMainApi", dependencyNotation = "org.jetbrains.kotlinx:kotlinx-serialization-runtime:0.20.0")
      }
      

      But this wasn't enough, as I still cannot use the lib in the main.kt

      I think I'm missing this part, using implementation, from the given example:

      subprojects {
          apply plugin: "kotlin-multiplatform"
          apply plugin: "kotlinx-serialization"
      
          kotlin {
              jvm {
              ...
                  }
              }
              js {
               ...
              }
      
              sourceSets {
                  commonMain {
                      dependencies {
                          implementation kotlin('stdlib-common')
                          implementation "org.jetbrains.kotlinx:kotlinx-serialization-runtime-common:$serializationRuntimeVersion"
      ...
      

      But I faild to include something equivalent in my build.gradle.kts.
      I also tried to use the build,gradle from the example and adapt it, but gave up after several attempts...
      Maybe I have to do some serious research on gradle, gradle-kotlin-dsl and the gradle korge plugin, before I try this again...

      Thanks for all the help!
      Rainer

      posted in Support
      R
      Rainer
    • RE: Adding external Libraries

      Thanks for the support, but I haven't been successful yet.

      I started a new projet in Intellij and used the korge defaults.
      Then I added this to the build.grade.kts (Nicos tipp):

      repositories {
      	mavenCentral()
      	mavenLocal()
      }
      
      dependencies {
      	add("commonMainApi", dependencyNotation = "org.jetbrains.kotlinx:kotlinx-serialization-runtime:0.20.0")
      }
      

      At this stage I can build and run (korge-runjvm) the project. Also the kotlinx.serilization,runtime lib is visible in the external libraries.

      But as soon as I want to use the library in the main.kt, like adding

      val j = Json(JsonConfiguration.Default)
      

      IntelliJ cannot find the classes.
      I also cannot import the stuff by hand:

      import kotlinx.serialization.json.Json
      import kotlinx.serialization.json.JsonConfiguration
      

      results in "unresoved reference: serilization"

      I'm sorry, but I really struggle with the gradle-tooling here. I find it very hard to find references, let alone understand the connections of gradle, gradle.kotlin, gradle-kroge-plugin and the use of the different scopes and notations in all of them.

      So if there are any more ideas, I'm still interrested in trying 🙂

      Thanks a lot,
      Rainer

      posted in Support
      R
      Rainer
    • RE: Adding external Libraries

      Thanks for this tip, but I still struggle with the gradle part.
      When I add the lib like this:

         korge {
         id = "test"
         dependencyMulti("org.jetbrains.kotlinx:kotlinx-serialization-runtime:0.20.0")
      }
      

      I still can't get it to work. I can't reference it in the code, an when I use the run-korge task, I get this error

      FAILURE: Build failed with an exception.
      
      * What went wrong:
      Execution failed for task ':genResources'.
      > Could not resolve all files for configuration ':detachedConfiguration1'.
         > Could not find org.jetbrains.kotlinx:kotlinx-serialization-runtime-jvm:0.20.0.
           Searched in the following locations:
             - file:/home/rainer/.m2/repository/org/jetbrains/kotlinx/kotlinx-serialization-runtime-jvm/0.20.0/kotlinx-serialization-runtime-jvm-0.20.0.pom
             - https://dl.bintray.com/korlibs/korlibs/org/jetbrains/kotlinx/kotlinx-serialization-runtime-jvm/0.20.0/kotlinx-serialization-runtime-jvm-0.20.0.pom
             - https://jcenter.bintray.com/org/jetbrains/kotlinx/kotlinx-serialization-runtime-jvm/0.20.0/kotlinx-serialization-runtime-jvm-0.20.0.pom
             - https://repo.maven.apache.org/maven2/org/jetbrains/kotlinx/kotlinx-serialization-runtime-jvm/0.20.0/kotlinx-serialization-runtime-jvm-0.20.0.pom
           Required by:
               project :
      

      I suspect the multiplatform, or the korge plugin rename the lib from kotlinx-serialization-runtime:0.20.0 to kotlinx-serialization-runtime-jvm-0.20.0
      but I have no workaround for this.

      So any help would be great.

      Thanks,
      Rainer

      posted in Support
      R
      Rainer
    • Adding external Libraries

      Hi there,

      I'm new to Kotlin and very new to KorGE. I tried to read JSON-Data in a KorGE application, but can't get any library to work.
      Right now I tried to use the kotlinx-serilization and added this classpath to the dependency-section of the standard KorGE build.gradle.kts file:
      ```
      classpath( "org.jetbrains.kotlinx:kotlinx-serialization-runtime:0.20.0")

      
      Gradle downloads the dependency, but the libs don't appear in the external Libraries and I can't reference anthing in the code.
      
      I'm not set on this specific lib, anything that can parse Json to classes would be welcome.
      
      I couldn't find any examples where KorGE-Applications use other libraries, so I'm kind of stuck. Any help would be great.
      
      Thanks a lot,
      Rainer
      posted in Support
      R
      Rainer