Auf Thema antworten

So, das ist ja bald mehr Maven- als Java-Code :p

[code=XML]

            <plugin>

                <groupId>org.apache.maven.plugins</groupId>

                <artifactId>maven-dependency-plugin</artifactId>

                <version>${maven.dependency.plugin}</version>

                <executions>

                    <!-- erstmal Abhängigkeiten für den Class-Path kopieren -->

                    <execution>

                        <id>copy-dependencies</id>

                        <phase>package</phase>

                        <goals>

                            <goal>copy-dependencies</goal>

                        </goals>

                        <configuration>

                            <outputDirectory>${project.build.directory}/modules</outputDirectory>

                            <excludeGroupIds>org.openjfx,com.fasterxml.jackson.core,com.fasterxml.jackson.dataformat</excludeGroupIds>

                            <includeScope>runtime</includeScope>

                            <artifactItems>

                                <artifactItem>

                                    <groupId>${project.groupId}</groupId>

                                    <artifactId>${project.artifactId}</artifactId>

                                    <version>${project.version}</version>

                                    <type>${project.packaging}</type>

                                </artifactItem>

                            </artifactItems>

                            <overWriteReleases>false</overWriteReleases>

                            <overWriteSnapshots>false</overWriteSnapshots>

                            <overWriteIfNewer>true</overWriteIfNewer>

                        </configuration>

                    </execution>


                    <!-- dazu noch das Projekt-JAR -->

                    <execution>

                        <id>copy</id>

                        <phase>install</phase>

                        <goals>

                            <goal>copy</goal>

                        </goals>

                        <configuration>

                            <outputDirectory>${project.build.directory}/modules</outputDirectory>

                            <artifactItems>

                                <artifactItem>

                                    <groupId>${project.groupId}</groupId>

                                    <artifactId>${project.artifactId}</artifactId>

                                    <version>${project.version}</version>

                                    <type>${project.packaging}</type>

                                    <destFileName>${project.build.finalName}.jar</destFileName>

                                </artifactItem>

                            </artifactItems>

                            <overWriteIfNewer>true</overWriteIfNewer>

                        </configuration>

                    </execution>

                </executions>

            </plugin>


            <plugin>

                <groupId>com.github.akman</groupId>

                <artifactId>jpackage-maven-plugin</artifactId>

                <version>${jpackage.maven.plugin}</version>

                <configuration>

                    <name>${app.name}</name>

                    <type>IMAGE</type>

                    <modulepath>

                        <dependencysets>

                            <dependencyset>                               

                                <includenames>

                                    <includename>javafx\..*</includename>

                                </includenames>

                            </dependencyset>

                        </dependencysets>

                    </modulepath>

                    <addmodules>

                        <addmodule>java.sql</addmodule>

                        <addmodule>javafx.controls</addmodule>

                        <addmodule>javafx.fxml</addmodule>

                    </addmodules>

                    <mainclass>${main.class}</mainclass>

                    <input>${project.build.directory}/modules</input>

                    <mainjar>${jar.file}.jar</mainjar>

                </configuration>

            </plugin>

[/code]


Ist halt nicht besonders schön, dass man alles selbst angeben muss. Aber zumindest läuft das jetzt in Maven und nicht mehr via Batch.



Oben