One Minute Sample

Just execute the following command in your project

mvn org.bud.maven.mojo:maven-simplewebstart-plugin:jnlp

The plugin will generate in your target directory the jnlp bundle (target/jnlp)

 target/jnlp/<artifactId>.jnlp
            /**.jar

Configuration

Simple Config

<plugin>
    <groupId>org.bud.maven.mojo</groupId>
    <artifactId>maven-simplewebstart-plugin</artifactId>
    <version>0.1-SNAPSHOT</version>
    <configuration>
        <jnlp>
            <mainClass>org.bud.gui.BudGui</mainClass>
            <permission>all</permission>
        </jnlp>
        <!-- add the following lines to sign jars -->
        <sign>
            <alias>MYALIAS</alias>
            <keypass>MyKeyPass</keypass>
            <storepass>MyStorePass</storepass>
            <keystore>/path/to/MyStore</keystore>
        </sign>
    </configuration>
</plugin>

Full Config

<plugin>
    <groupId>org.bud.maven.mojo</groupId>
    <artifactId>maven-simplewebstart-plugin</artifactId>
    <version>0.1-SNAPSHOT</version>
    <configuration>
        <jnlp>
            <spec>1.0+</spec>
            <codebase>http://home.org/jnlp</codebase>
            <jnlpFileName>myjnlp.jnlp</jnlpFileName>
            <title>My Jnlp</title>
            <vendor>Me</vendor>
            <homepage>http://home.org</homepage>
            <icon>http://home.org/icon.png</icon>
            <splashIcon>http://home.org/splash.png</splashIcon>
            <description>...</description>
            <oneLineDescription>...</oneLineDescription>
            <shortDescription>...</shortDescription>
            <tooltipDescription>...</tooltipDescription>
            <offlineAllowed>no</offlineAllowed>
            <permission>all</permission>
            <mainClass>org.home.Main</mainClass>
            <j2se>
                <version></version>
                <href></href>
                <autodownload></autodownload>
                <javaVmArgs></javaVmArgs>
                <initialHeapSize></initialHeapSize>
                <maxHeapSize></maxHeapSize>
            </j2se>
            <properties>
                <property>
                    <name>mykey</name>
                    <value>myvalue</value>
                </property>
            </properties>
            <arguments>
                <argument>mycommandlineArg</argument>
            </arguments>
        </jnlp>
        <sign>
            <alias>MYALIAS</alias>
            <keypass>MyKeyPass</keypass>
            <storepass>MyStorePass</storepass>
            <keystore>/path/to/MyStore</keystore>
        </sign>
    </configuration>
</plugin>
Note:
The Simple WebStart does not need other input. If you want more flexible possibilities please see the webstart-maven-plugin

FAQ

key generation : see the keytool-maven-plugin

Native dependencies : Native dependencies must be pre-packaged in a jar and discoverable throught the pom dependency mechanism (direct dependency or profile dependency).

<plugin>
    <groupId>org.bud.maven.mojo</groupId>
    <artifactId>maven-simplewebstart-plugin</artifactId>
    <version>0.1-SNAPSHOT</version>
    <configuration>
        <jnlp>
            <mainClass>org.bud.gui.BudGui</mainClass>
        </jnlp>
        <natives>
            <native>
                <os>windows</os>
                <groupId>net.java.dev.jdic</groupId>
                <artifactId>jdic-windows</artifactId>
            </native>
        </natives>
    </configuration>
</plugin>
Note:
For the moment, it only works for direct dependency. In the future, the os description will be guessed from the activation part of the profile containing the native dependency.