Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8092054

Create Maven Archetype

XMLWordPrintable

    • Icon: Enhancement Enhancement
    • Resolution: Won't Fix
    • Icon: P4 P4
    • tbd
    • None
    • deploy

      One of the key milestones to getting a JavaFX project up and running quickly, is setting up the project in Maven since so much of the tooling is not Mavenized. Maven has the ability to create projects from a template called an "archetype" similar to the way in which NetBeans project templates can be used to create a new JavaFX project. When the user runs the archetype, the following should happen:

       - The appropriate folder structure including a folder for distribution resources like the splashscreen should be created.
       - A POM file with the appropriate dependencies should be created (including environment variable settings).
       - An Eclipse project file should be generated: http://maven.apache.org/guides/mini/guide-ide-eclipse.html
       - A skeleton Application should be created
       - Maven goals should be generated to create:
           - JNLP
           - a shaded double-clickable JAR http://maven.apache.org/plugins/maven-shade-plugin/
           - Windows executable
           - Linux RPM and Deb files http://mojo.codehaus.org/rpm-maven-plugin/, http://mojo.codehaus.org/deb-maven-plugin/
           - Mac DMG file: http://mojo.codehaus.org/osxappbundle-maven-plugin/
           - Handle signing of the JARs (including dependencies).

      Development shops typically have a build machine (usually Linux) that runs automated builds, and the machine should be able to build any of the platform-specific packages previously specified.

      The POM shouldn't rely on Ant calls.

      Once the project has been generated, the developer should be able to type "mvn package:webstart" (or something similar) and find the appropriate artifacts in the target directory.

            cbensen Chris Bensen (Inactive)
            mfortnerjfx Mark Fortner (Inactive)
            Votes:
            4 Vote for this issue
            Watchers:
            6 Start watching this issue

              Created:
              Updated:
              Resolved:
              Imported: