INTELIJ błąd podczas uruchamiania aplikacji JavaFX + Java11

0

Co jest nie tak? (patrz załącznik).

0

JavaFX 11 wymaga chyba osobnej instalacji: https://openjfx.io/ tzn jest osobnym składnikiem, nie wbudowanym już w standardowy JDK.

0

javafx is dead ;) wypadła z JDK i czeka ja taki sam los jak niegdyś GWT. Ślepa uliczka. Trzeba sobie ją dodatkowo sciągnąć.

0

What is dead may never die :-)

0

Skonfigurowałem Javę 8 bo na niej zawsze działała mi JavaFX ale jest jakiś błąd o dodanie flagi --add-modules.

0

Stawiam, że --add-modules działa w Javie 11, a w Javie 8 nie, więc wraz ze zmianą wersji Javy musisz zmienić też flagi.

0

Dom pom.xml dodajesz te importy :

     <dependency>
            <groupId>org.openjfx</groupId>
            <artifactId>javafx-controls</artifactId>
            <version>${javafx.version}</version>
        </dependency>
        <dependency>
            <groupId>org.openjfx</groupId>
            <artifactId>javafx-fxml</artifactId>
            <version>${javafx.version}</version>
        </dependency>
        <dependency>
            <groupId>org.openjfx</groupId>
            <artifactId>javafx-base</artifactId>
            <version>${javafx.version}</version>
        </dependency>
        <dependency>
            <groupId>org.openjfx</groupId>
            <artifactId>javafx-graphics</artifactId>
            <version>11.0.2</version>
        </dependency>

Najlepiej do glownego modulu

Nastepnie do kazdego modulu uzywajacego javaFX dodajesz odpowiednie wpisy do module-info.java, w zaleznosci czego bedziesz uzywal.

module simtree.client.desktop {
    requires javafx.controls;
}

Dodatkowo musisz stworzyc nowa klase bedaca twoja uruchomieniowa MainApp, a ktora bedzie wywolywac dotychczas wywolywana klase.

public class AppRun {

    public static void main(String[] args) {
        SimTreeRun.main(args);
    }
}

I w glownym pom.xml :

 <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.8.0</version>
                <configuration>
                    <release>11</release>
                    <annotationProcessorPaths>
                        <path>
                            <groupId>org.projectlombok</groupId>
                            <artifactId>lombok</artifactId>
                            <version>${lombok.version}</version>
                        </path>
                        <path>
                            <groupId>org.mapstruct</groupId>
                            <artifactId>mapstruct-processor</artifactId>
                            <version>${org.mapstruct.version}</version>
                        </path>
                    </annotationProcessorPaths>

                    <compilerArgs>
                        <arg>-sourcepath</arg>
                        <arg>
                            ${project.basedir}/src/main/java${path.separator}${project.basedir}/target/generated-sources/annotations${path.separator}/
                        </arg>
                    </compilerArgs>
                </configuration>
            </plugin>
        </plugins>
    </build>

Oraz w pom.xml modulu ktory uruchamia applikacje:

<plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.8.0</version>
                <configuration>
                    <release>11</release>
                    <annotationProcessorPaths>
                        <path>
                            <groupId>org.projectlombok</groupId>
                            <artifactId>lombok</artifactId>
                            <version>${lombok.version}</version>
                        </path>
                        <path>
                            <groupId>org.mapstruct</groupId>
                            <artifactId>mapstruct-processor</artifactId>
                            <version>${org.mapstruct.version}</version>
                        </path>
                    </annotationProcessorPaths>
                    <compilerArgs>
                        <arg>-sourcepath</arg>
                        <arg>${project.basedir}/src/main/java${path.separator}${project.basedir}/target/generated-sources/annotations${path.separator}/</arg>
                    </compilerArgs>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>exec-maven-plugin</artifactId>
                <version>1.6.0</version>
                <executions>
                    <execution>
                        <goals>
                            <goal>java</goal>
                        </goals>
                    </execution>
                </executions>
                <configuration>
                    <mainClass>simtree.client.AppRun</mainClass>
                </configuration>
            </plugin>
            <plugin>
                <artifactId>maven-assembly-plugin</artifactId>
                <executions>
                    <execution>
                        <phase>package</phase>
                        <goals>
                            <goal>single</goal>
                        </goals>
                    </execution>
                </executions>
                <configuration>
                    <archive>
                        <manifest>
                            <addClasspath>true</addClasspath>
                            <mainClass>simtree.client.AppRun</mainClass>
                        </manifest>
                    </archive>
                    <descriptorRefs>
                        <descriptorRef>jar-with-dependencies</descriptorRef>
                    </descriptorRefs>
                </configuration>
            </plugin>
        </plugins>
    </build>

1 użytkowników online, w tym zalogowanych: 0, gości: 1