Closed dman-sol closed 4 years ago
You can find the cause of the exception in the target/client/x86_64-windows/gvm/log
folder, there are logs for mvn client:run
.
Probably you need to add the class to the reflectionList.
About
since from 0.1.29 it refuses to build at all
can you be more specific? What is failing for you?
since from 0.1.29 it refuses to build at all
The target
folder is not created in this case, so there are no logs.
Can you try mvn clean client:compile client:link
instead?
Did you notice those weird symbols before?
Can you try
mvn clean client:compile client:link
instead?
I will do this a little later.
Did you notice those weird symbols before?
No, I have not seen this before.
Can you try
mvn clean client:compile client:link
instead?
`C:\Users\DMan\IdeaProjects\graal\Calculator>mvn clean client:compile client:link [INFO] Scanning for projects... [INFO] [INFO] ------------------------< org.dman:Calculator >------------------------- [INFO] Building Calculator 1.0-SNAPSHOT [INFO] --------------------------------[ jar ]--------------------------------- [INFO] [INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ Calculator --- [INFO] [INFO] >>> client-maven-plugin:0.1.29:compile (default-cli) > process-classes @ Calculator >>> [INFO] [INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ Calculator --- [INFO] Using 'UTF-8' encoding to copy filtered resources. [INFO] Copying 1 resource [INFO] [INFO] --- maven-compiler-plugin:3.8.1:compile (default-compile) @ Calculator --- [INFO] Changes detected - recompiling the module! [INFO] Compiling 3 source files to C:\Users\DMan\IdeaProjects\graal\Calculator\target\classes [INFO] [INFO] <<< client-maven-plugin:0.1.29:compile (default-cli) < process-classes @ Calculator <<< [INFO] [INFO] [INFO] --- client-maven-plugin:0.1.29:compile (default-cli) @ Calculator --- [ёЁ ш■ы. 29 13:24:08 MSK 2020][INFO] ==================== COMPILE TASK ====================
[ёЁ ш■ы. 29 13:24:09 MSK 2020][INFO] We will now compile your code for x86_64-microsoft-windows. This may take some time.
java.io.IOException: Error: C:\Users\DMan\Java\JDK\graalvm-ce-java11-20.3.0-dev\bin\jar doesn't exist
at com.gluonhq.substrate.model.ClassPath.getJars(ClassPath.java:143)
at com.gluonhq.substrate.config.ConfigResolver.
C:\Users\DMan\IdeaProjects\graal\Calculator>`
Can you check that C:\Users\DMan\Java\JDK\graalvm-ce-java11-20.3.0-dev\bin\jar
exists? If the %GRAALVM_HOME%
path is correct, it should.
Can you check that
C:\Users\DMan\Java\JDK\graalvm-ce-java11-20.3.0-dev\bin\jar
exists? If the%GRAALVM_HOME%
path is correct, it should.
That's right, he's there
Can you run this from the vs 64 bits terminal?
%GRAALVM_HOME%\bin\jar --help
Can you run this from the vs 64 bits terminal?
%GRAALVM_HOME%\bin\jar --help
C:\Users\DMan\IdeaProjects\graal\Calculator>%GRAALVM_HOME%\bin\jar --help
Usage: jar [OPTION...] [ [--release VERSION] [-C dir] files] ...
jar creates an archive for classes and resources, and can manipulate or
restore individual classes or resources from an archive.
Examples:
# Create an archive called classes.jar with two class files:
jar --create --file classes.jar Foo.class Bar.class
# Create an archive using an existing manifest, with all the files in foo/:
jar --create --file classes.jar --manifest mymanifest -C foo/ .
# Create a modular jar archive, where the module descriptor is located in
# classes/module-info.class:
jar --create --file foo.jar --main-class com.foo.Main --module-version 1.0
-C foo/ classes resources
# Update an existing non-modular jar to a modular jar:
jar --update --file foo.jar --main-class com.foo.Main --module-version 1.0
-C foo/ module-info.class
# Create a multi-release jar, placing some files in the META-INF/versions/9 directory:
jar --create --file mr.jar -C foo classes --release 9 -C foo9 classes
To shorten or simplify the jar command, you can specify arguments in a separate
text file and pass it to the jar command with the at sign (@) as a prefix.
Examples:
# Read additional options and list of class files from the file classes.list
jar --create --file my.jar @classes.list
Main operation mode:
-c, --create Create the archive
-i, --generate-index=FILE Generate index information for the specified jar
archives
-t, --list List the table of contents for the archive
-u, --update Update an existing jar archive
-x, --extract Extract named (or all) files from the archive
-d, --describe-module Print the module descriptor, or automatic module name
Operation modifiers valid in any mode:
-C DIR Change to the specified directory and include the
following file
-f, --file=FILE The archive file name. When omitted, either stdin or
stdout is used based on the operation
--release VERSION Places all following files in a versioned directory
of the jar (i.e. META-INF/versions/VERSION/)
-v, --verbose Generate verbose output on standard output
Operation modifiers valid only in create and update mode:
-e, --main-class=CLASSNAME The application entry point for stand-alone
applications bundled into a modular, or executable,
jar archive
-m, --manifest=FILE Include the manifest information from the given
manifest file
-M, --no-manifest Do not create a manifest file for the entries
--module-version=VERSION The module version, when creating a modular
jar, or updating a non-modular jar
--hash-modules=PATTERN Compute and record the hashes of modules
matched by the given pattern and that depend upon
directly or indirectly on a modular jar being
created or a non-modular jar being updated
-p, --module-path Location of module dependence for generating
the hash
Operation modifiers valid only in create, update, and generate-index mode:
-0, --no-compress Store only; use no ZIP compression
Other options:
-?, -h, --help[:compat] Give this, or optionally the compatibility, help
--help-extra Give help on extra options
--version Print program version
An archive is a modular jar if a module descriptor, 'module-info.class', is
located in the root of the given directories, or the root of the jar archive
itself. The following operations are only valid when creating a modular jar,
or updating an existing non-modular jar: '--module-version',
'--hash-modules', and '--module-path'.
Mandatory or optional arguments to long options are also mandatory or optional
for any corresponding short options.
Ok, thanks. I can reproduce the issue
Probably you need to add the class to the reflectionList.
Thank. It really helped.
<reflectionList>
<list>org.dman.Controller</list>
<list>javafx.scene.control.MenuButton</list>
<list>javafx.scene.control.MenuItem</list>
</reflectionList>
If there is a MenuButton in the Controller code or sample.fxml, then the application stops running. I use: GraalVM CE 20.3.0-dev-20200729_0201 for Windows; C ++ / CLI support for v142 build tools (14.26); MSVC v142 - VS 2019 C ++ x64 / x86 build tools (v14.26); Windows 10 SDK (10.0.19041.0); com.gluonhq: client-maven-plugin: 0.1.28 (since from 0.1.29 it refuses to build at all, including samples).