Igor Nekrestyanov igor.nekrestyanov at
Fri Apr 20 08:25:57 PDT 2012

Alright, this sounds like new feature request then. Please file it to JIRA.
Examples of applications (description of what needs to be redistributed, 
why current ways are painful, etc.), use cases and
ideas on possible solutions will be very helpful.

We do need more details to understand what exactly can be done here (see 
questions below to start with).

On 4/20/12 3:24 AM, Tom Eugelink wrote:
> As describe in a previous mail, I would go for a layered approach 
> similar to WAR files:
> - A single WAR-alike format which contains all files that are needed; 
> jars, resources, etc.
>   * distribution is done by simply copying it
>   * cross platform
Do you expect this to contain JavaFX too?
Once native resources are involved it is not cross platform anymore.
> - That WAR file can easily be wrapped in an exe for Windows or Mac 
> that only needs to find the JRE to run the WAR with, or actually 
> include the JRE (since it now it no longer cross platform).
>   * distribution is done by simply copying it
How do you expect it will be used? Options i see
    a) application is run from this file
        (i.e. it is kind of "fat/single jar")

    b) application will install from this file. Once run it will unpack 
application somewhere (Should user be able to select location/cancel 
        Once installed user will need to run real application from 
installed location.

    c) "war like behavior". On first launch content will be unpacked 
into cache and then used from cache.
        Subsequent uses of the same file will transparently redirect to 
existing cache.
        (multiple JVM used => slow startup, where do we place cache, do 
we show UI when unpack is in progress, how do we update, etc)

Perhaps it will help to clarify whats wrong with existing approaches 
such as:
     - merge all application resources into fat jar and make it runable
     - create self extracting jar file for your application. it can 
unpack app into current folder for future use
     - distribute application as webstart app

Do you have examples of other desktop technologies where deployment for 
your use cases is better/optimal?
> - And that can easily be wrapped in a standard installer.
>   * This would mean nothing more that creating uninstaller records 
> within the OS.
What about UI and customizations?

>   * requires install rights on the OS
> This is identical to the problems with a Swing application, not JavaFX 
> specific.
> I'm all enterpricy so appstores are not in my scope, but easily 
> deployment (aka copy) is. Right now my "app jar" solution unpacks it 
> all to a temp dir and then starts a second VM, while the first goes 
> into a monitoring state.
> Tom
> On 2012-04-20 08:32, Igor Nekrestyanov wrote:
>> On 4/19/12 11:03 PM, Tom Eugelink wrote:
>>> Ok. How about the "there is no standard way to distribute a stand 
>>> alone JavaFX application"? Create a JIRA issue?
>> Could you please be more specific?
>> What is "standard way" and how do you expect to distribute this package?
>> Is it different problem from distributing java application 
>> (especially once javafx runtime will be part of the JRE)?
>> Do you expect to application "install" on the user system or run from 
>> the package?
>> Are you thinking about shipping your application to the App Store?
>> We might have related feature request already:
>>       "Add ability to co-bundle Java + JavaFX + App into a single 
>> native executable"
>> It is on 2.2 list right now but it is not clear if we can support 
>> other native packages for platforms other than Mac yet
>> (see discussion in the JIRA).
>> -igor

More information about the openjfx-dev mailing list