Hi, I am working on a small project where I use h2db as an embedded database. I want to compile this project using graalvm and use the produced binary.
However the dependency breaks the build. Are there any workarounds available? *Sample build log:* $ mvn -Pnative clean package [INFO] Scanning for projects... [INFO] [INFO] -------------------------< xyz.behrang:xyz-fs >------------------------- [INFO] Building xyz-fs 1.0-SNAPSHOT [INFO] --------------------------------[ jar ]--------------------------------- [INFO] [INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ xyz-fs --- [INFO] Deleting /home/behrangsa/Documents/Projects/github.com/behrangsa/xyz-fs/target [INFO] [INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ xyz-fs --- [WARNING] Using platform encoding (UTF-8 actually) to copy filtered resources, i.e. build is platform dependent! [INFO] Copying 2 resources [INFO] [INFO] --- maven-compiler-plugin:3.1:compile (default-compile) @ xyz-fs --- [INFO] Changes detected - recompiling the module! [WARNING] File encoding has not been set, using platform encoding UTF-8, i.e. build is platform dependent! [INFO] Compiling 4 source files to /home/behrangsa/Documents/Projects/github.com/behrangsa/xyz-fs/target/classes [INFO] [INFO] --- maven-resources-plugin:2.6:testResources (default-testResources) @ xyz-fs --- [WARNING] Using platform encoding (UTF-8 actually) to copy filtered resources, i.e. build is platform dependent! [INFO] skip non existing resourceDirectory /home/behrangsa/Documents/Projects/github.com/behrangsa/xyz-fs/src/test/resources [INFO] [INFO] --- maven-compiler-plugin:3.1:testCompile (default-testCompile) @ xyz-fs --- [INFO] Nothing to compile - all classes are up to date [INFO] [INFO] --- maven-surefire-plugin:2.12.4:test (default-test) @ xyz-fs --- [INFO] No tests to run. [INFO] [INFO] --- native-maven-plugin:0.9.9:test (test-native) @ xyz-fs --- [INFO] [INFO] --- maven-jar-plugin:2.4:jar (default-jar) @ xyz-fs --- [INFO] Building jar: /home/behrangsa/Documents/Projects/github.com/behrangsa/xyz-fs/target/xyz-fs-1.0-SNAPSHOT.jar [INFO] [INFO] --- native-maven-plugin:0.9.9:build (build-native) @ xyz-fs --- [INFO] ImageClasspath Entry: com.h2database:h2:jar:2.0.204:compile (file:///home/behrangsa/.m2/repository/com/h2database/h2/2.0.204/h2-2.0.204.jar) [INFO] ImageClasspath Entry: commons-codec:commons-codec:jar:1.15:compile (file:///home/behrangsa/.m2/repository/commons-codec/commons-codec/1.15/commons-codec-1.15.jar) [INFO] ImageClasspath Entry: commons-io:commons-io:jar:2.11.0:compile (file:///home/behrangsa/.m2/repository/commons-io/commons-io/2.11.0/commons-io-2.11.0.jar) [INFO] ImageClasspath Entry: xyz.behrang:xyz-fs:jar:1.0-SNAPSHOT (file:///home/behrangsa/Documents/Projects/github.com/behrangsa/xyz-fs/target/xyz-fs-1.0-SNAPSHOT.jar) [INFO] Executing: /home/behrangsa/.sdkman/candidates/java/current/bin/native-image -cp /home/behrangsa/.m2/repository/com/h2database/h2/2.0.204/h2-2.0.204.jar:/home/behrangsa/.m2/repository/commons-codec/commons-codec/1.15/commons-codec-1.15.jar:/home/behrangsa/.m2/repository/commons-io/commons-io/2.11.0/commons-io-2.11.0.jar:/home/behrangsa/Documents/Projects/github.com/behrangsa/xyz-fs/target/xyz-fs-1.0-SNAPSHOT.jar -H:Class=xyz.behrang.fs.Main -H:Name=findex [findex:56102] classlist: 614.69 ms, 0.96 GB [findex:56102] (cap): 377.03 ms, 0.96 GB [findex:56102] setup: 1,329.99 ms, 0.96 GB [findex:56102] analysis: 3,875.41 ms, 2.31 GB Fatal error:com.oracle.graal.pointsto.util.AnalysisError$ParsingError: Error encountered while parsing org.h2.value.ValueToObjectConverter.valueToObject(java.lang.Class, org.h2.value.Value, org.h2.jdbc.JdbcConnection) Parsing context: at org.h2.value.ValueToObjectConverter.valueToObject(ValueToObjectConverter.java:281) at org.h2.schema.FunctionAlias$JavaMethod.execute(FunctionAlias.java:474) at org.h2.schema.FunctionAlias$JavaMethod.getValue(FunctionAlias.java:345) at org.h2.expression.function.JavaFunction.getValue(JavaFunction.java:40) at org.h2.command.dml.Call.update(Call.java:52) at org.h2.command.CommandList.executeRemaining(CommandList.java:49) at org.h2.command.CommandList.update(CommandList.java:66) at org.h2.command.Command.executeUpdate(Command.java:252) at org.h2.engine.Engine.openSession(Engine.java:258) at org.h2.engine.Engine.createSession(Engine.java:201) at org.h2.engine.SessionRemote.connectEmbeddedOrServer(SessionRemote.java:338) at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:117) at org.h2.Driver.connect(Driver.java:59) at java.sql.DriverManager.getConnection(DriverManager.java:681) at java.sql.DriverManager.getConnection(DriverManager.java:252) at xyz.behrang.fs.commands.Init.run(Init.java:35) at xyz.behrang.fs.Main.main(Main.java:28) at com.oracle.svm.core.JavaMainWrapper.runCore(JavaMainWrapper.java:147) at com.oracle.svm.core.JavaMainWrapper.run(JavaMainWrapper.java:183) at com.oracle.graal.pointsto.util.AnalysisError.parsingError(AnalysisError.java:133) at com.oracle.graal.pointsto.flow.MethodTypeFlow.createTypeFlow(MethodTypeFlow.java:311) at com.oracle.graal.pointsto.flow.MethodTypeFlow.ensureTypeFlowCreated(MethodTypeFlow.java:282) at com.oracle.graal.pointsto.flow.MethodTypeFlow.addContext(MethodTypeFlow.java:103) at com.oracle.graal.pointsto.flow.StaticInvokeTypeFlow.update(InvokeTypeFlow.java:420) at com.oracle.graal.pointsto.PointsToAnalysis$2.run(PointsToAnalysis.java:595) at com.oracle.graal.pointsto.util.CompletionExecutor.executeCommand(CompletionExecutor.java:188) at com.oracle.graal.pointsto.util.CompletionExecutor.lambda$executeService$0(CompletionExecutor.java:172) at java.base/java.util.concurrent.ForkJoinTask$RunnableExecuteAction.exec(ForkJoinTask.java:1395) at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:373) at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1182) at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1655) at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1622) at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:165) Caused by: com.oracle.graal.pointsto.util.AnalysisError: parsing had failed in another thread at com.oracle.graal.pointsto.util.AnalysisError.shouldNotReachHere(AnalysisError.java:153) at com.oracle.graal.pointsto.meta.AnalysisMethod.ensureGraphParsed(AnalysisMethod.java:656) at com.oracle.graal.pointsto.phases.InlineBeforeAnalysisGraphDecoder.lookupEncodedGraph(InlineBeforeAnalysis.java:182) at jdk.internal.vm.compiler/org.graalvm.compiler.replacements.PEGraphDecoder.doInline(PEGraphDecoder.java:1120) at jdk.internal.vm.compiler/org.graalvm.compiler.replacements.PEGraphDecoder.tryInline(PEGraphDecoder.java:1103) at jdk.internal.vm.compiler/org.graalvm.compiler.replacements.PEGraphDecoder.trySimplifyInvoke(PEGraphDecoder.java:961) at jdk.internal.vm.compiler/org.graalvm.compiler.replacements.PEGraphDecoder.handleInvoke(PEGraphDecoder.java:915) at jdk.internal.vm.compiler/org.graalvm.compiler.nodes.GraphDecoder.processNextNode(GraphDecoder.java:791) at com.oracle.graal.pointsto.phases.InlineBeforeAnalysisGraphDecoder.processNextNode(InlineBeforeAnalysis.java:242) at jdk.internal.vm.compiler/org.graalvm.compiler.nodes.GraphDecoder.decode(GraphDecoder.java:532) at jdk.internal.vm.compiler/org.graalvm.compiler.replacements.PEGraphDecoder.decode(PEGraphDecoder.java:787) at com.oracle.graal.pointsto.phases.InlineBeforeAnalysis.decodeGraph(InlineBeforeAnalysis.java:99) at com.oracle.graal.pointsto.flow.MethodTypeFlowBuilder.parse(MethodTypeFlowBuilder.java:171) at com.oracle.graal.pointsto.flow.MethodTypeFlowBuilder.apply(MethodTypeFlowBuilder.java:321) at com.oracle.graal.pointsto.flow.MethodTypeFlow.createTypeFlow(MethodTypeFlow.java:293) ... 12 more Caused by: org.graalvm.compiler.java.BytecodeParser$BytecodeParserError: com.oracle.graal.pointsto.constraints.UnresolvedElementException: Discovered unresolved type during parsing: org.locationtech.jts.geom.Geometry. To diagnose the issue you can use the --allow-incomplete-classpath option. The missing type is then reported at run time when it is accessed the first time. at parsing org.h2.value.ValueGeometry.getGeometry(ValueGeometry.java:163) at jdk.internal.vm.compiler/org.graalvm.compiler.java.BytecodeParser.throwParserError(BytecodeParser.java:2624) at com.oracle.svm.hosted.phases.SharedGraphBuilderPhase$SharedBytecodeParser.throwParserError(SharedGraphBuilderPhase.java:107) at jdk.internal.vm.compiler/org.graalvm.compiler.java.BytecodeParser.iterateBytecodesForBlock(BytecodeParser.java:3485) at jdk.internal.vm.compiler/org.graalvm.compiler.java.BytecodeParser.handleBytecodeBlock(BytecodeParser.java:3437) at jdk.internal.vm.compiler/org.graalvm.compiler.java.BytecodeParser.processBlock(BytecodeParser.java:3282) at jdk.internal.vm.compiler/org.graalvm.compiler.java.BytecodeParser.build(BytecodeParser.java:1145) at jdk.internal.vm.compiler/org.graalvm.compiler.java.BytecodeParser.buildRootMethod(BytecodeParser.java:1030) at jdk.internal.vm.compiler/org.graalvm.compiler.java.GraphBuilderPhase$Instance.run(GraphBuilderPhase.java:84) at com.oracle.svm.hosted.phases.SharedGraphBuilderPhase.run(SharedGraphBuilderPhase.java:81) at jdk.internal.vm.compiler/org.graalvm.compiler.phases.Phase.run(Phase.java:49) at jdk.internal.vm.compiler/org.graalvm.compiler.phases.BasePhase.apply(BasePhase.java:212) at jdk.internal.vm.compiler/org.graalvm.compiler.phases.Phase.apply(Phase.java:42) at jdk.internal.vm.compiler/org.graalvm.compiler.phases.Phase.apply(Phase.java:38) at com.oracle.graal.pointsto.flow.AnalysisParsedGraph.parseBytecode(AnalysisParsedGraph.java:132) at com.oracle.graal.pointsto.meta.AnalysisMethod.ensureGraphParsed(AnalysisMethod.java:621) ... 25 more Caused by: com.oracle.graal.pointsto.constraints.UnresolvedElementException: Discovered unresolved type during parsing: org.locationtech.jts.geom.Geometry. To diagnose the issue you can use the --allow-incomplete-classpath option. The missing type is then reported at run time when it is accessed the first time. at com.oracle.svm.hosted.phases.SharedGraphBuilderPhase$SharedBytecodeParser.reportUnresolvedElement(SharedGraphBuilderPhase.java:307) at com.oracle.svm.hosted.phases.SharedGraphBuilderPhase$SharedBytecodeParser.handleUnresolvedType(SharedGraphBuilderPhase.java:263) at com.oracle.svm.hosted.phases.SharedGraphBuilderPhase$SharedBytecodeParser.handleUnresolvedCheckCast(SharedGraphBuilderPhase.java:227) at jdk.internal.vm.compiler/org.graalvm.compiler.java.BytecodeParser.genCheckCast(BytecodeParser.java:4458) at jdk.internal.vm.compiler/org.graalvm.compiler.java.BytecodeParser.genCheckCast(BytecodeParser.java:4451) at jdk.internal.vm.compiler/org.graalvm.compiler.java.BytecodeParser.processBytecode(BytecodeParser.java:5427) at jdk.internal.vm.compiler/org.graalvm.compiler.java.BytecodeParser.iterateBytecodesForBlock(BytecodeParser.java:3477) ... 37 more [findex:56102] [total]: 5,964.61 ms, 2.31 GB # Printing build artifacts to: /home/behrangsa/Documents/Projects/github.com/behrangsa/xyz-fs/target/findex.build_artifacts.txt Error: Image build request failed with exit status 1 [INFO] ------------------------------------------------------------------------ [INFO] BUILD FAILURE [INFO] ------------------------------------------------------------------------ [INFO] Total time: 7.370 s [INFO] Finished at: 2022-01-05T22:48:48+11:00 [INFO] ------------------------------------------------------------------------ [ERROR] Failed to execute goal org.graalvm.buildtools:native-maven-plugin:0.9.9:build (build-native) on project xyz-fs: Execution of /home/behrangsa/.sdkman/candidates/java/current/bin/native-image -cp /home/behrangsa/.m2/repository/com/h2database/h2/2.0.204/h2-2.0.204.jar:/home/behrangsa/.m2/repository/commons-codec/commons-codec/1.15/commons-codec-1.15.jar:/home/behrangsa/.m2/repository/commons-io/commons-io/2.11.0/commons-io-2.11.0.jar:/home/behrangsa/Documents/Projects/github.com/behrangsa/xyz-fs/target/xyz-fs-1.0-SNAPSHOT.jar -H:Class=xyz.behrang.fs.Main -H:Name=findex returned non-zero result -> [Help 1] [ERROR] [ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch. [ERROR] Re-run Maven using the -X switch to enable full debug logging. [ERROR] [ERROR] For more information about the errors and possible solutions, please read the following articles: [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException -- You received this message because you are subscribed to the Google Groups "H2 Database" group. To unsubscribe from this group and stop receiving emails from it, send an email to h2-database+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/h2-database/1a3ec770-d8f3-4df8-b2fc-cae1efa1aad9n%40googlegroups.com.