Приложение JavaFX с Maven в Eclipse

Я хочу спросить, есть ли способ добавить JavaFX в список архетипов Maven в Eclipse или любой плагин для использования Maven для создания приложения JavaFX.

3 ответов


есть javafx-maven-плагин который доступен для maven.

при разработке С Java 8 вы просто ставите этот плагин как некоторый build-plugin, без дальнейших зависимостей.

<plugin>
    <groupId>com.zenjava</groupId>
    <artifactId>javafx-maven-plugin</artifactId>
    <version>8.8.3</version>
    <configuration>
        <mainClass>your.main.class.which.extends.javafx.Application</mainClass>
    </configuration>
</plugin>

вызов mvn jfx:jar создает ваш javafx-application-jar внутри target/jfx/app/yourapp-jfx.jar, или даже создает собственную пусковую установку (например, EXE-файл) при вызове mvn jfx:native.

отказ от ответственности: Я сопровождающий JavaFX-Maven-плагина.


единственное, что я добавляю к моему pom.xml для построения приложения JavaFX эта зависимость:

<dependency>
        <groupId>com.oracle</groupId>
        <artifactId>javafx</artifactId>
        <version>2.2</version>
        <systemPath>${java.home}/lib/ext/jfxrt.jar</systemPath>
        <scope>system</scope>
</dependency>

это просто получение JavaFX jar в моей Java8 JRE, чтобы добавить его в проект. Тогда я использую maven-assembly-plugin для создания jar с зависимостями.

надеюсь, что это помогает.


просто сделайте как общее приложение Java, потому что версия JavaFX подскочила до 8.0. Поддержка JavaFX встроена.

        <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>exec-maven-plugin</artifactId>
            <version>1.6.0</version>
            <executions>
                <execution>
                    <id>run application</id>
                    <phase>package</phase>
                    <goals>
                        <goal>java</goal>
                    </goals>
                    <configuration>
                        <mainClass>cn.keepfight.intro.FXParamApp</mainClass>
                        <arguments>
                            <!--<argument>-Dsun.java2d.opengl=true</argument>-->
                        </arguments>
                    </configuration>
                </execution>
            </executions>
        </plugin>