Comments (17)
Looks like comma (,
) works
The property is defined as java.util.List(String)
<classpath>
${project.build.directory}${file.separator}${project.build.finalName}.jar,${settings.localRepository}${file.separator}oracle${file.separator}dbtools${file.separator}dbtools-common${file.separator}${sqlcl.version}${file.separator}dbtools-common-${sqlcl.version}.jar,${settings.localRepository}${file.separator}org${file.separator}reflections${file.separator}reflections${file.separator}${reflections.version}${file.separator}reflections-${reflections.version}.jar,${settings.localRepository}${file.separator}org${file.separator}javassist${file.separator}javassist${file.separator}${javassist.version}${file.separator}javassist-${javassist.version}.jar,${settings.localRepository}${file.separator}org${file.separator}slf4j${file.separator}slf4j-api${file.separator}${slf4j.version}${file.separator}slf4j-api-${slf4j.version}.jar,${settings.localRepository}${file.separator}org${file.separator}slf4j${file.separator}slf4j-jdk14${file.separator}${slf4j.version}${file.separator}slf4j-jdk14-${slf4j.version}.jar,${settings.localRepository}${file.separator}org${file.separator}graalvm${file.separator}js${file.separator}js-scriptengine${file.separator}${graalvm.version}${file.separator}js-scriptengine-${graalvm.version}.jar
</classpath>
from plsql-formatter-settings.
And it actually formats.
PS C:\Users\JacekGebal\DataGripProjects\plsql-formatter-settings\standalone\target> .\tvdformat.exe scratch_1.json ext=sql,prc,fnc,pks,pkb,trg,vw,tps,tpb,tbp,plb,pls,rcv,spc,typ,aqt,aqp,ctx,dbl,tab,dim,snp,con,collt,seq,syn,grt,sp,spb,sps,pck mext=markdown,mdown,mkdn,md xml=trivadis_advanced_format.xml arbori=trivadis_custom_format.arbori
Formatting file 1 of 2: IMPEXP_CONFIGURATION_TO_CSV.pkb... done.
Formatting file 2 of 2: IMPEXP_CONFIGURATION_TO_CSV.pks... done.
PS C:\Users\JacekGebal\DataGripProjects\plsql-formatter-settings\standalone\target>
The start-up speed is amazing!
Not it can be used as a pre-commit hook actually.
from plsql-formatter-settings.
Seems that copy & paste of formatter.js file from sqlcl to standalone/src/main/resourece did the trick.
https://github.com/Trivadis/plsql-formatter-settings/blob/sqlcl-22.2.1/standalone/src/main/resources/format.js is a symbolic link.
Should work under Windows. But not per default. See https://github.com/git-for-windows/git/wiki/Symbolic-Links for more information.
I've run git clone -c core.symlinks=true https://github.com/Trivadis/plsql-formatter-settings.git
as Administrator in a command window. Works.
Is the solution for issue #228 provided in #231 applicable for native image?
Yes. It should work out-of-the box.
from plsql-formatter-settings.
I have tried using ${path.separator}
instead of :
and ${file.separator}
instead of /
in the pom
file
But still get the same error, even thought the Windows-style path looks good.
Caused by: java.nio.file.InvalidPathException: Illegal char <:> at index 111: C:\Users\JacekGebal\DataGripProjects\plsql-formatter-settings\standalone\target\tvdformat-22.2.2-SNAPSHOT.jar;C:\Users\JacekGebal\.m2\repository\oracle\dbtools\dbtools-common\22.2.1\dbtools-common-22.2.1.jar;C:\Users\JacekGebal\.m2\repository\org\reflections\reflections\0.10.2\reflections-0.10.2.jar;C:\Users\JacekGebal\.m2\repository\org\javassist\javassist\3.29.0-GA\javassist-3.29.0-GA.jar;C:\Users\JacekGebal\.m2\repository\org\slf4j\slf4j-api\1.7.36\slf4j-api-1.7.36.jar;C:\Users\JacekGebal\.m2\repository\org\slf4j\slf4j-jdk14\1.7.36\slf4j-jdk14-1.7.36.jar;C:\Users\JacekGebal\.m2\repository\org\graalvm\js\js-scriptengine\22.2.0\js-scriptengine-22.2.0.jar
The odd thing is that it is complaining about :
at position 111 which is the second occurrence C:\...
from plsql-formatter-settings.
After I have disabled the entire <classpath>
section it began to work.
<!-- <classpath>-->
<!-- ${project.build.directory}${file.separator}${project.build.finalName}.jar${path.separator}${settings.localRepository}${file.separator}oracle${file.separator}dbtools${file.separator}dbtools-common${file.separator}${sqlcl.version}${file.separator}dbtools-common-${sqlcl.version}.jar${path.separator}${settings.localRepository}${file.separator}org${file.separator}reflections${file.separator}reflections${file.separator}${reflections.version}${file.separator}reflections-${reflections.version}.jar${path.separator}${settings.localRepository}${file.separator}org${file.separator}javassist${file.separator}javassist${file.separator}${javassist.version}${file.separator}javassist-${javassist.version}.jar${path.separator}${settings.localRepository}${file.separator}org${file.separator}slf4j${file.separator}slf4j-api${file.separator}${slf4j.version}${file.separator}slf4j-api-${slf4j.version}.jar${path.separator}${settings.localRepository}${file.separator}org${file.separator}slf4j${file.separator}slf4j-jdk14${file.separator}${slf4j.version}${file.separator}slf4j-jdk14-${slf4j.version}.jar${path.separator}${settings.localRepository}${file.separator}org${file.separator}graalvm${file.separator}js${file.separator}js-scriptengine${file.separator}${graalvm.version}${file.separator}js-scriptengine-${graalvm.version}.jar-->
<!-- </classpath>-->
from plsql-formatter-settings.
[2/7] Performing analysis... [*******] (42.1s @ 4.32GB)
20,565 (94.63%) of 21,733 classes reachable
36,962 (66.44%) of 55,631 fields reachable
109,625 (68.59%) of 159,829 methods reachable
12,304 ( 7.70%) of 159,829 methods included for runtime compilation
516 classes, 1,461 fields, and 5,896 methods registered for reflection
74 classes, 54 fields, and 66 methods registered for JNI access
4 native libraries: crypt32, ncrypt, psapi, version
[3/7] Building universe... (3.2s @ 5.18GB)
[4/7] Parsing methods... [***] (5.4s @ 2.25GB)
[5/7] Inlining methods... [****] (3.2s @ 4.48GB)
[6/7] Compiling methods... [*****] (26.5s @ 3.50GB)
[7/7] Creating image... (9.5s @ 4.35GB)
67.47MB (34.32%) for code area: 88,473 compilation units
128.42MB (65.33%) for image heap: 775,443 objects and 3,742 resources
687.53KB ( 0.34%) for other data
196.55MB in total
------------------------------------------------------------------------------------------------------------------------
Top 10 packages in code area: Top 10 object types in image heap:
8.25MB com.oracle.truffle.js.builtins 51.36MB byte[] for embedded resources
2.64MB com.oracle.truffle.js.nodes.access 19.10MB byte[] for code metadata
2.23MB com.oracle.truffle.js.nodes.binary 8.68MB byte[] for graph encodings
2.04MB com.oracle.truffle.js.builtins.temporal 5.81MB java.lang.Class
1.61MB com.oracle.truffle.polyglot 4.62MB java.lang.String
1.37MB java.util 4.44MB char[]
1.20MB com.oracle.truffle.host 4.41MB byte[] for general heap data
1.04MB com.oracle.truffle.js.runtime.builtins 4.39MB byte[] for java.lang.String
1.04MB com.oracle.truffle.api.interop 2.01MB com.oracle.svm.graal.meta.SubstrateField
1.01MB com.ibm.icu.text 1.89MB c.o.truffle.api.nodes.NodeClassImpl$NodeFieldData
44.38MB for 476 more packages 21.16MB for 4550 more object types
------------------------------------------------------------------------------------------------------------------------
5.6s (5.1% of total time) in 59 GCs | Peak RSS: 7.55GB | CPU load: 9.20
------------------------------------------------------------------------------------------------------------------------
Produced artifacts:
C:\Users\JacekGebal\DataGripProjects\plsql-formatter-settings\standalone\target\awt.dll (jdk_lib)
C:\Users\JacekGebal\DataGripProjects\plsql-formatter-settings\standalone\target\fontmanager.dll (jdk_lib)
C:\Users\JacekGebal\DataGripProjects\plsql-formatter-settings\standalone\target\freetype.dll (jdk_lib)
C:\Users\JacekGebal\DataGripProjects\plsql-formatter-settings\standalone\target\java.dll (jdk_lib_shim)
C:\Users\JacekGebal\DataGripProjects\plsql-formatter-settings\standalone\target\javaaccessbridge.dll (jdk_lib)
C:\Users\JacekGebal\DataGripProjects\plsql-formatter-settings\standalone\target\javajpeg.dll (jdk_lib)
C:\Users\JacekGebal\DataGripProjects\plsql-formatter-settings\standalone\target\jawt.dll (jdk_lib)
C:\Users\JacekGebal\DataGripProjects\plsql-formatter-settings\standalone\target\jvm.dll (jdk_lib_shim)
C:\Users\JacekGebal\DataGripProjects\plsql-formatter-settings\standalone\target\lcms.dll (jdk_lib)
C:\Users\JacekGebal\DataGripProjects\plsql-formatter-settings\standalone\target\tvdformat.build_artifacts.txt (txt)
C:\Users\JacekGebal\DataGripProjects\plsql-formatter-settings\standalone\target\tvdformat.exe (executable)
========================================================================================================================
from plsql-formatter-settings.
Well, that was not so good either.
The EXE build ok but it doesn't really work.
C:\Users\JacekGebal>cd DataGripProjects\plsql-formatter-settings\standalone\target
C:\Users\JacekGebal\DataGripProjects\plsql-formatter-settings\standalone\target>tvdformat.exe ACCOUNT.sql
Exception in thread "main" javax.script.ScriptException: org.graalvm.polyglot.PolyglotException: SyntaxError: <eval>:1:0 Expected an operand but found .
../../../../sqlcl/format.js
^
at com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.toScriptException(GraalJSScriptEngine.java:503)
at com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.eval(GraalJSScriptEngine.java:480)
at com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.eval(GraalJSScriptEngine.java:420)
at com.trivadis.plsql.formatter.TvdFormat.run(TvdFormat.java:36)
at com.trivadis.plsql.formatter.TvdFormat.main(TvdFormat.java:49)
Caused by: org.graalvm.polyglot.PolyglotException: SyntaxError: <eval>:1:0 Expected an operand but found .
../../../../sqlcl/format.js
^
at org.graalvm.polyglot.Context.eval(Context.java:399)
at com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.eval(GraalJSScriptEngine.java:478)
... 3 more
I must say I'm walking quite blind here as I'm totally inexperienced in this topic.
Perhaps it's wrong build libraries version or some other problems. No clue really.
If you would have some time to help me out - it would be great.
Thanks
Jacek
from plsql-formatter-settings.
It works on macOS. I cannot test it on Windows at the moment, but I suspect, that this line is as you suspected platform specific.
:
(colon) is used as path separator. That's ok for all *nix systems. But on Windows it's ;
(semicolon). Could you please change this line on your system to:
${project.build.directory}/${project.build.finalName}.jar;${settings.localRepository}/oracle/dbtools/dbtools-common/${sqlcl.version}/dbtools-common-${sqlcl.version}.jar;${settings.localRepository}/org/reflections/reflections/${reflections.version}/reflections-${reflections.version}.jar;${settings.localRepository}/org/javassist/javassist/${javassist.version}/javassist-${javassist.version}.jar;${settings.localRepository}/org/slf4j/slf4j-api/${slf4j.version}/slf4j-api-${slf4j.version}.jar;${settings.localRepository}/org/slf4j/slf4j-jdk14/${slf4j.version}/slf4j-jdk14-${slf4j.version}.jar;${settings.localRepository}/org/graalvm/js/js-scriptengine/${graalvm.version}/js-scriptengine-${graalvm.version}.jar
and try again?
It should be possible to make the POM truly platform independent.
Thx.
from plsql-formatter-settings.
Unfortunately that doesn't work :/
[INFO] Found GraalVM installation from JAVA_HOME variable.
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 6.371 s
[INFO] Finished at: 2022-08-17T17:58:41+03:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.graalvm.buildtools:native-maven-plugin:0.9.13:build (build-native) on project tvdformat: Execution build-native of goal org.graalvm.buildtools:native-maven-plugin:0.9.13:build failed: Illegal char <:> at index 111: C:\Users\JacekGebal\DataGripProjects\plsql-formatter-settings\standalone\target\tvdformat-22.2.2-SNAPSHOT.jar;C:\Users\JacekGebal\.m2\repository\oracle\dbtools\dbtools-common\22.2.1\dbtools-common-22.2.1.jar;C:\Users\JacekGebal\.m2\repository\org\reflections\reflections\0.10.2\reflections-0.10.2.jar;C:\Users\JacekGebal\.m2\repository\org\javassist\javassist\3.29.0-GA\javassist-3.29.0-GA.jar;C:\Users\JacekGebal\.m2\repository\org\slf4j\slf4j-api\1.7.36\slf4j-api-1.7.36.jar;C:\Users\JacekGebal\.m2\repository\org\slf4j\slf4j-jdk14\1.7.36\slf4j-jdk14-1.7.36.jar;C:\Users\JacekGebal\.m2\repository\org\graalvm\js\js-scriptengine\22.2.0\js-scriptengine-22.2.0.jar -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.graalvm.buildtools:native-maven-plugin:0.9.13:build (build-native) on project tvdformat: Execution build-native of goal org.graalvm.buildtools:native-maven-plugin:0.9.13:build failed: Illegal char <:> at index 111: C:\Users\JacekGebal\DataGripProjects\plsql-formatter-settings\standalone\target\tvdformat-22.2.2-SNAPSHOT.jar;C:\Users\JacekGebal\.m2\repository\oracle\dbtools\dbtools-common\22.2.1\dbtools-common-22.2.1.jar;C:\Users\JacekGebal\.m2\repository\org\reflections\reflections\0.10.2\reflections-0.10.2.jar;C:\Users\JacekGebal\.m2\repository\org\javassist\javassist\3.29.0-GA\javassist-3.29.0-GA.jar;C:\Users\JacekGebal\.m2\repository\org\slf4j\slf4j-api\1.7.36\slf4j-api-1.7.36.jar;C:\Users\JacekGebal\.m2\repository\org\slf4j\slf4j-jdk14\1.7.36\slf4j-jdk14-1.7.36.jar;C:\Users\JacekGebal\.m2\repository\org\graalvm\js\js-scriptengine\22.2.0\js-scriptengine-22.2.0.jar
at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute2 (MojoExecutor.java:375)
at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute (MojoExecutor.java:351)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:215)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:171)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:163)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81)
at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128)
at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:294)
at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192)
at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105)
at org.apache.maven.cli.MavenCli.execute (MavenCli.java:960)
at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:293)
at org.apache.maven.cli.MavenCli.main (MavenCli.java:196)
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:77)
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke (Method.java:568)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406)
at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347)
Caused by: org.apache.maven.plugin.PluginExecutionException: Execution build-native of goal org.graalvm.buildtools:native-maven-plugin:0.9.13:build failed: Illegal char <:> at index 111: C:\Users\JacekGebal\DataGripProjects\plsql-formatter-settings\standalone\target\tvdformat-22.2.2-SNAPSHOT.jar;C:\Users\JacekGebal\.m2\repository\oracle\dbtools\dbtools-common\22.2.1\dbtools-common-22.2.1.jar;C:\Users\JacekGebal\.m2\repository\org\reflections\reflections\0.10.2\reflections-0.10.2.jar;C:\Users\JacekGebal\.m2\repository\org\javassist\javassist\3.29.0-GA\javassist-3.29.0-GA.jar;C:\Users\JacekGebal\.m2\repository\org\slf4j\slf4j-api\1.7.36\slf4j-api-1.7.36.jar;C:\Users\JacekGebal\.m2\repository\org\slf4j\slf4j-jdk14\1.7.36\slf4j-jdk14-1.7.36.jar;C:\Users\JacekGebal\.m2\repository\org\graalvm\js\js-scriptengine\22.2.0\js-scriptengine-22.2.0.jar
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:148)
at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute2 (MojoExecutor.java:370)
at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute (MojoExecutor.java:351)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:215)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:171)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:163)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81)
at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128)
at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:294)
at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192)
at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105)
at org.apache.maven.cli.MavenCli.execute (MavenCli.java:960)
at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:293)
at org.apache.maven.cli.MavenCli.main (MavenCli.java:196)
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:77)
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke (Method.java:568)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406)
at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347)
Caused by: java.nio.file.InvalidPathException: Illegal char <:> at index 111: C:\Users\JacekGebal\DataGripProjects\plsql-formatter-settings\standalone\target\tvdformat-22.2.2-SNAPSHOT.jar;C:\Users\JacekGebal\.m2\repository\oracle\dbtools\dbtools-common\22.2.1\dbtools-common-22.2.1.jar;C:\Users\JacekGebal\.m2\repository\org\reflections\reflections\0.10.2\reflections-0.10.2.jar;C:\Users\JacekGebal\.m2\repository\org\javassist\javassist\3.29.0-GA\javassist-3.29.0-GA.jar;C:\Users\JacekGebal\.m2\repository\org\slf4j\slf4j-api\1.7.36\slf4j-api-1.7.36.jar;C:\Users\JacekGebal\.m2\repository\org\slf4j\slf4j-jdk14\1.7.36\slf4j-jdk14-1.7.36.jar;C:\Users\JacekGebal\.m2\repository\org\graalvm\js\js-scriptengine\22.2.0\js-scriptengine-22.2.0.jar
at sun.nio.fs.WindowsPathParser.normalize (WindowsPathParser.java:182)
at sun.nio.fs.WindowsPathParser.parse (WindowsPathParser.java:153)
at sun.nio.fs.WindowsPathParser.parse (WindowsPathParser.java:77)
at sun.nio.fs.WindowsPath.parse (WindowsPath.java:92)
at sun.nio.fs.WindowsFileSystem.getPath (WindowsFileSystem.java:232)
at java.nio.file.Path.of (Path.java:147)
at java.nio.file.Paths.get (Paths.java:69)
at org.graalvm.buildtools.maven.AbstractNativeMojo.lambda$populateClasspath$5 (AbstractNativeMojo.java:367)
at java.util.stream.ReferencePipeline$3$1.accept (ReferencePipeline.java:197)
at java.util.ArrayList$ArrayListSpliterator.forEachRemaining (ArrayList.java:1625)
at java.util.stream.AbstractPipeline.copyInto (AbstractPipeline.java:509)
at java.util.stream.AbstractPipeline.wrapAndCopyInto (AbstractPipeline.java:499)
at java.util.stream.ReduceOps$ReduceOp.evaluateSequential (ReduceOps.java:921)
at java.util.stream.AbstractPipeline.evaluate (AbstractPipeline.java:234)
at java.util.stream.ReferencePipeline.collect (ReferencePipeline.java:682)
at org.graalvm.buildtools.maven.AbstractNativeMojo.populateClasspath (AbstractNativeMojo.java:369)
at org.graalvm.buildtools.maven.AbstractNativeMojo.getClasspath (AbstractNativeMojo.java:378)
at org.graalvm.buildtools.maven.AbstractNativeMojo.getBuildArgs (AbstractNativeMojo.java:211)
at org.graalvm.buildtools.maven.AbstractNativeMojo.buildImage (AbstractNativeMojo.java:393)
at org.graalvm.buildtools.maven.NativeBuildMojo.execute (NativeBuildMojo.java:91)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:137)
at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute2 (MojoExecutor.java:370)
at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute (MojoExecutor.java:351)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:215)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:171)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:163)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81)
at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128)
at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:294)
at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192)
at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105)
at org.apache.maven.cli.MavenCli.execute (MavenCli.java:960)
at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:293)
at org.apache.maven.cli.MavenCli.main (MavenCli.java:196)
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:77)
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke (Method.java:568)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406)
at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347)
[ERROR]
[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/PluginExecutionException
C:\Users\JacekGebal\DataGripProjects\plsql-formatter-settings\standalone>
from plsql-formatter-settings.
Ok. Thanks. I have to setup an environment to reproduce this myself. It looks like the colon in the drive letter is now the problem.
from plsql-formatter-settings.
As a workaround can comment out the classpath argument as follows:
<execution>
<id>build-native</id>
<goals>
<goal>build</goal>
</goals>
<phase>package</phase>
<!-- Override classpath to ensure js is not added to the classpath.
This reduces resuting image size by 24 MB (162 MB instead of 186 MB). -->
<configuration>
<!--classpath>
${project.build.directory}/${project.build.finalName}.jar:${settings.localRepository}/oracle/dbtools/dbtools-common/${sqlcl.version}/dbtools-common-${sqlcl.version}.jar:${settings.localRepository}/org/reflections/reflections/${reflections.version}/reflections-${reflections.version}.jar:${settings.localRepository}/org/javassist/javassist/${javassist.version}/javassist-${javassist.version}.jar:${settings.localRepository}/org/slf4j/slf4j-api/${slf4j.version}/slf4j-api-${slf4j.version}.jar:${settings.localRepository}/org/slf4j/slf4j-jdk14/${slf4j.version}/slf4j-jdk14-${slf4j.version}.jar:${settings.localRepository}/org/graalvm/js/js-scriptengine/${graalvm.version}/js-scriptengine-${graalvm.version}.jar
</classpath-->
<buildArgs combine.children="append">
<!-- including all charsets works for build-native only!?! -->
<buildArg>-H:+AddAllCharsets</buildArg>
</buildArgs>
</configuration>
</execution>
</executions>
As mentioned in the comment the classpath just leads to a smaller native executable.
from plsql-formatter-settings.
This is really strange.
I assume it is a maven plugin (datatype) issue
from plsql-formatter-settings.
Interesting. I tried to use ,
inststead of :
and it built successfully. The native image worked as expected.
Does it work now on Windows 11 as well?
from plsql-formatter-settings.
No.
I get the following issue:
PS C:\Users\JacekGebal\DataGripProjects\plsql-formatter-settings\standalone\target> .\tvdformat.exe
Exception in thread "main" javax.script.ScriptException: org.graalvm.polyglot.PolyglotException: SyntaxError: <eval>:1:0 Expected an operand but found .
../../../../sqlcl/format.js
^
at com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.toScriptException(GraalJSScriptEngine.java:503)
at com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.eval(GraalJSScriptEngine.java:480)
at com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.eval(GraalJSScriptEngine.java:420)
at com.trivadis.plsql.formatter.TvdFormat.run(TvdFormat.java:36)
at com.trivadis.plsql.formatter.TvdFormat.main(TvdFormat.java:49)
Caused by: org.graalvm.polyglot.PolyglotException: SyntaxError: <eval>:1:0 Expected an operand but found .
../../../../sqlcl/format.js
^
at org.graalvm.polyglot.Context.eval(Context.java:399)
at com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.eval(GraalJSScriptEngine.java:478)
... 3 more
PS C:\Users\JacekGebal\DataGripProjects\plsql-formatter-settings\standalone\target>
from plsql-formatter-settings.
I was building in VS 2022 v17.3.0 command prompt.
**********************************************************************
** Visual Studio 2022 Developer Command Prompt v17.3.0
** Copyright (c) 2022 Microsoft Corporation
**********************************************************************
[vcvarsall.bat] Environment initialized for: 'x64'
C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools>
from plsql-formatter-settings.
Seems that copy & paste of formatter.js file from sqlcl
to standalone/src/main/resourece
did the trick.
Another small glitch but now I get:
PS C:\Users\JacekGebal\DataGripProjects\plsql-formatter-settings\standalone\target> .\tvdformat.exe SPM_ACCOUNT_OLD.Table.sql
file or directory C:\Users\JacekGebal\DataGripProjects\plsql-formatter-settings\standalone\target\SPM_ACCOUNT_OLD.Table.sql does not exist.
Trivadis PL/SQL & SQL Formatter (tvdformat), version 22.2.2-SNAPSHOT
usage: tvdformat <rootPath> [options]
mandatory argument: (one of the following)
<rootPath> file or path to directory containing files to format (content will be replaced!)
<config.json> configuration file in JSON format (must end with .json)
options:
ext=<ext> comma separated list of file extensions to process, e.g. ext=sql,pks,pkb
mext=<ext> comma separated list of markdown file extensions to process, e.g. ext=md,mdown
xml=<file> path to the file containing the xml file for advanced format settings
xml=default uses default advanced settings included in sqlcl
xml=embedded uses advanced settings defined in format.js
arbori=<file> path to the file containing the Arbori program for custom format settings
arbori=default uses default Arbori program included in sqlcl
ignore=<file> path to the file containing file patterns to ignore. Patterns are defined
per line. Each line represent a glob pattern. Empty lines and lines starting
with a hash sign (#) are ignored.
serr=<scope> scope of syntax errors to be reported. By default all errors are reported.
serr=none reports no syntax errors
serr=all reports all syntax errors
serr=ext reports syntax errors for files defined with ext option
serr=mext reports syntax errors for files defined with mext option
--help, -h, print this help screen and exit
--version, -v print version and exit
PS C:\Users\JacekGebal\DataGripProjects\plsql-formatter-settings\standalone\target>
from plsql-formatter-settings.
@PhilippSalvisberg
Is the solution for issue #228 provided in #231 applicable for native image?
If not, is there anything I can/should do to make native image work with UTF-8 files on Windows?
from plsql-formatter-settings.
Related Issues (20)
- Superb Script HOT 2
- Package constant formatting HOT 1
- Function header formatting: return deterministic HOT 1
- Support SQLDev 23.1.0 HOT 1
- Add - Formatierung "CASE WHEN" in SELECT statemen HOT 4
- Newlines being inserted into strings HOT 4
- Concatenation Bars being split apart invalidating strings HOT 2
- compiler flag concatenated to same line as end statement HOT 2
- Support SQLcl 23.3
- Do not reset Arbori program when importing trivadis_advanced_format.xml
- Unwanted line break after `whenever oserror` breaks code
- Wrong indentation in subqueries of with_clause in insert statements
- Unwanted line break before `on conversion error` in subquery
- spaces removed in grant statement
- Patching SQL Developer breaks Script Output tab feedback of direct SQL statement execution HOT 8
- Support SQLcl 23.4.0
- Can't export data after patch HOT 1
- Connection window is empty and not able to create any new database connection HOT 4
- Format table/view names in lowercase HOT 6
- Double quotes removed from xmlelement after format. HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from plsql-formatter-settings.