NoSuchMethodError: Lorg/duckdb/user/DuckDBMap;.getSQLTypeName()Ljava/lang/String
- Lenguaje dominante
- C++
- Estrellas
- 127
- Forks
- 80
- Merge medio
- 13 h 49 min
- PR fusionados (30 d)
- 48
Descripción
I am using duckDB java client in a Kotlin Multiplatform app for desktop on MacOS.
```
val db = DuckDBConnection.newConnection("jdbc:duckdb:/Users/jasperpaterson/test.duckdb", readOnly=true, null)
```
When I run in development with `./gradlew :composeApp:run` the connection works and I can query the duckdb file. However, when I run `./gradlew runReleaseDistributable` I get
```
Exception in thread "AWT-EventQueue-0" java.lang.NoSuchMethodError: Lorg/duckdb/user/DuckDBMap;.getSQLTypeName()Ljava/lang/String;
at java.base/jdk.internal.loader.NativeLibraries.load(Native Method)
at java.base/jdk.internal.loader.NativeLibraries$NativeLibraryImpl.open(Unknown Source)
at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(Unknown Source)
at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(Unknown Source)
at java.base/java.lang.ClassLoader.loadLibrary(Unknown Source)
at java.base/java.lang.Runtime.load0(Unknown Source)
at java.base/java.lang.System.load(Unknown Source)
at org.duckdb.DuckDBNative.unpackAndLoad(DuckDBNative.java:119)
at org.duckdb.DuckDBNative.loadNativeLibrary(DuckDBNative.java:46)
at org.duckdb.DuckDBNative.(DuckDBNative.java:32)
at org.duckdb.DuckDBConnection.newConnection(DuckDBConnection.java:62)
at org.duckdb.DuckDBConnection.newConnection(DuckDBConnection.java:51)
at com.example.auroracat_desktop.util.UtilKt.getDuckDBConnection(Util.kt:171)
at com.example.auroracat_desktop.util.UtilKt.getDuckDBConnection$default(Util.kt:166)
```
### Versions
composeMultiplatform = "1.8.2"
kotlin = "2.2.0"
duckdb = "1.4.3.0"
### Edit
I also tried on Windows and I get the same behaviour
Guía de contribución
No hay ninguna guía de contribución indexada para este repositorio
Línea de trabajo
Comienza comparando las dependencias de ejecución producidas por :composeApp:run y runReleaseDistributable; después inspecciona DuckDBNative.java:119 y DuckDBConnection.newConnection en la ruta de release que falla. Reproduce el problema en la configuración de MacOS o Windows indicada y determina por qué el runtime de release resuelve un método incompatible de DuckDBMap; se considera terminado cuando el distributable de release abre la base de datos correctamente.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- java, kotlin
- Área
- build-system, databases
- Tipo de issue
- Error
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Estado de actividad
- Estancado
- Claridad
- Bastante claro
- Aptitud para principiantes
- 42/100