On 12/17/2018 12:45 PM, Scott Palmer wrote:
I finally got to the point where I can play with this…
I’m just using trial and error, trying to figure out what to do based
on the output of package --help and responding to error messages to
guide me.
I’ve already used jlink to create a runtime (including JavaFX) that I
want to use with my non-modular application. I’ve put a bunch of
files that my application requires in an ‘app’ folder
/Library/Java/JavaVirtualMachines/jdk-12.jdk/Contents/Home/bin/jpackage
create-installer --input /Users/scott/dev/AdminApp/build/image/app,
--runtime-image /Users/scott/dev/AdminApp/build/image/runtime
--output /Users/scott/dev/AdminApp/build/installer
--build-root /Users/scott/dev/AdminApp/build/tmpInst --name "Server
Admin"
--main-jar /Users/scott/dev/AdminApp/build/libs/AdminApp-1.0.4.jar —class my.company.serveradmin.ServerAdminApp
Bundler Mac App Store Ready Bundler skipped because of a configuration
problem: java.lang.RuntimeException: File
/Library/Java/JavaVirtualMachines/jdk-12.jdk/Contents/Home/jmods does
not belong to /Users/scott/dev/AdminApp/build/image/app
Bundler DMG Installer skipped because of a configuration problem:
java.lang.RuntimeException:
File /Library/Java/JavaVirtualMachines/jdk-12.jdk/Contents/Home/jmods
does not belong to /Users/scott/dev/AdminApp/build/image/app
Bundler PKG Installer skipped because of a configuration problem:
java.lang.RuntimeException:
File /Library/Java/JavaVirtualMachines/jdk-12.jdk/Contents/Home/jmods
does not belong to /Users/scott/dev/AdminApp/build/image/app
OK - I can now get this error when specifying an absolute path to the
main jar (even if it is within the input dir).
I will fix this messaging.
I don’t understand the error message. What is it complaining about?
I figured out that I was using the wrong value for the --main-jar .. I
needed the name relative to my input folder, so I changed that and it
produced output, but the error message I got above was not at all helpful.
Then I looked at the directory structure of the application bundle.
My input directory looked like
app/
libs/
<all my jars here>
But the ‘libs’ subfolder was missing from the produced bundle. All the
jars that were in it were placed directly in the ‘Java’ folder of the
app bundle.
So then I added a README.txt file under /app as a sibling of the libs
folder. That caused the bundled structure to match what I had, with a
README.txt and ‘libs’ folder containing all my jars, all located in
the ‘Java’ folder of the application bundle.
I think that inconsistent layout should be corrected.
It would be good to document what is expected in the input directory,
how those files are used, and where they end up in the output
directory. --icon says it takes the icon file name (not a path), but
I don’t want to install the icon file as a separate discrete file in
my application, so where is it looking for it?
This is wrong in the help output - will fix.
the value of the --icon option is a path, either absolute or relative to
the working directory jpackage is run from. It need not be in the
--input dir, or listed in the --files option.
/Andy
I complete example for each of the sample usages shown by "package
--help" would go a long way.
Scott