I’m creating an Android app using Kotlin to read PLY files and render them using OpenGL. I found about the Assimp
library and tried some approaches like building from its source (had issues creating the JNI bindings), using different packages on MavenCentral (different options available, some of them are not complete or caused some random issue), and ended up getting the JAR file from this GitHub repo to give it a try.
I’ve added it to build.gradle.kts
using:
implementation(files("libs/assimp.jar"))
This is one of the JAR files I’ve tried: https://github.com/kotlin-graphics/assimp/releases/download/v4.0/assimp-all.jar.
But I’m getting a lot of errors like this:
Duplicate class kotlin.ArrayIntrinsicsKt found in modules assimp.jar -> assimp (assimp.jar) and kotlin-stdlib-1.9.0.jar -> kotlin-stdlib-1.9.0 (org.jetbrains.kotlin:kotlin-stdlib:1.9.0)
Duplicate class kotlin.Deprecated found in modules assimp.jar -> assimp (assimp.jar) and kotlin-stdlib-1.9.0.jar -> kotlin-stdlib-1.9.0 (org.jetbrains.kotlin:kotlin-stdlib:1.9.0)
Duplicate class kotlin.DeprecationLevel found in modules assimp.jar -> assimp (assimp.jar) and kotlin-stdlib-1.9.0.jar -> kotlin-stdlib-1.9.0 (org.jetbrains.kotlin:kotlin-stdlib:1.9.0)
Duplicate class kotlin.DslMarker found in modules assimp.jar -> assimp (assimp.jar) and kotlin-stdlib-1.9.0.jar -> kotlin-stdlib-1.9.0 (org.jetbrains.kotlin:kotlin-stdlib:1.9.0)
Duplicate class kotlin.ExceptionsKt found in modules assimp.jar -> assimp (assimp.jar) and kotlin-stdlib-1.9.0.jar -> kotlin-stdlib-1.9.0 (org.jetbrains.kotlin:kotlin-stdlib:1.9.0)
Duplicate class kotlin.ExceptionsKt__ExceptionsKt found in modules assimp.jar -> assimp (assimp.jar) and kotlin-stdlib-1.9.0.jar -> kotlin-stdlib-1.9.0 (org.jetbrains.kotlin:kotlin-stdlib:1.9.0)
Duplicate class kotlin.ExtensionFunctionType found in modules assimp.jar -> assimp (assimp.jar) and kotlin-stdlib-1.9.0.jar -> kotlin-stdlib-1.9.0 (org.jetbrains.kotlin:kotlin-stdlib:1.9.0)
Duplicate class kotlin.Function found in modules assimp.jar -> assimp (assimp.jar) and kotlin-stdlib-1.9.0.jar -> kotlin-stdlib-1.9.0 (org.jetbrains.kotlin:kotlin-stdlib:1.9.0)
Duplicate class kotlin.InitializedLazyImpl found in modules assimp.jar -> assimp (assimp.jar) and kotlin-stdlib-1.9.0.jar -> kotlin-stdlib-1.9.0 (org.jetbrains.kotlin:kotlin-stdlib:1.9.0)
I thought about excluding the duplicates using proguard-rules.pro
, but did not find how to do it.