On 12/15/2018 11:26 AM, Sverre Moe wrote:
Some feedback from using this new JDK12 jpackage.

The argument --version is no longer used for setting the bundler version.
Thus one needs to specify bundle resources (spec for RPM and control for DEB), if the version is anything other than "1.0".
Sorry - the name of the option was changed to "--appVersion" recently (to not conflict with --version used to display the version of jpackage).

I have yet to find out how to specify the bundle resources. It tells to put them on the class path, but that cannot be right, as jpackage is module. Using default package resource [menu icon]  (add package/movies.png to the class path to customize)

I meant to get back to you on this.  This is an incorrect warning message that needs to be fixed - I will file a bug.

The icon should be specified by the --icon option, has nothing to do with a class-path.  This is a resource for the packager not the app.

All resources for the app should be specified by combination of --input, --files, and --module-path


Why is --icon the only bundle argument that can be set on jpackage?
Using custom package resource [menu icon]  (loaded from file /home/sverre/workspace/movies/src/main/deploy/package/linux/movies.png)
not sure I understand this.

If these arguments where available there would be no need to add the bundle resources to any class path. --version, --release, --icon, --desktop, --linux-rpm-spec-file, --linux-deb-control-file, --windows-exe-iss-file
or this either,

The project I am trying this on is a fully modularized JavaFX application.
    task createInstaller(type: Exec) {
        dependsOn createRuntime
        dependsOn installDist
        commandLine '/usr/java/jdk-12/bin/jpackage', 'create-installer',
            '--verbose',
            '--name', project.name <http://project.name>,
            '--description', project.description,
            '--vendor', "Smeaworks Inc",
            '--install-dir', "/opt/smeaworks",
            '--category', "Some/Category/Application",
            '--module-path', new File(installDist.outputs.files.singleFile, "lib"),
            '--module', "${mainClassName}",
            '--runtime-image', ""${buildDir}/runtime
            '--output', "$buildDir/jfx/native"
    }

the latest build contains bug JDK-8213392, which prevents using --module-path and --runtime-image together (see https://bugs.openjdk.java.net/browse/JDK-8213962)

This will soon be fixed - but it would still be advisable to run jlink first from the original runtime image with the desired module path. to get a minimal runtime image for your app.


/Andy



/Sverre


Den fre. 14. des. 2018 kl. 13:47 skrev Andy Herrick <andy.herr...@oracle.com <mailto:andy.herr...@oracle.com>>:

    I am pleased to announce that the first EA build of jpackage is now
    available at : https://jdk.java.net/jpackage/

    This is an early access build of JEP 343: Packaging Tool
    <https://openjdk.java.net/jeps/343>, aimed at testing a prototype
    implementation of jpackage,

    This build is intended for developers interested in jpackage, and is
    provided as a convenience so that they don't need to build from the
    source code <https://hg.openjdk.java.net/jdk/sandbox>
    (branch="JDK-8200758-branch").

    Warning: This build is based on an incomplete version of JDK 12
    <https://openjdk.java.net/projects/jdk/12/>.

    Please send feedback via e-mail to core-libs-dev@openjdk.java.net
    <mailto:core-libs-dev@openjdk.java.net>

    /Andy

Reply via email to