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.

Reply via email to