diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..57000c0 --- /dev/null +++ b/.gitignore @@ -0,0 +1,10 @@ +# IDEA # +.idea/ +out/ +*.iml +*.ipr +*.iws +*.ids + +# MAVEN # +target/ diff --git a/README.MD b/README.MD new file mode 100644 index 0000000..2cc734b --- /dev/null +++ b/README.MD @@ -0,0 +1,15 @@ +# JavaFX Example + +![](https://shields.io/badge/Java-17-orange) ![](https://shields.io/badge/JavaFX-20-blue) + +## Build + +```shell +mvn clean package +``` + +## Launch + +```shell +java -jar ./target/javafx-1.0-SNAPSHOT-jar-with-dependencies.jar +``` \ No newline at end of file diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..5adc66e --- /dev/null +++ b/pom.xml @@ -0,0 +1,116 @@ + + + 4.0.0 + + example + javafx + 1.0-SNAPSHOT + + + 17 + 20 + example.javafx.Main + + ${java.version} + ${java.version} + UTF-8 + + + + + + org.openjfx + javafx-controls + ${javafx.version} + + + org.openjfx + javafx-fxml + ${javafx.version} + + + + + org.openjfx + javafx-graphics + ${javafx.version} + win + + + org.openjfx + javafx-graphics + ${javafx.version} + linux + + + org.openjfx + javafx-graphics + ${javafx.version} + mac + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + 3.8.0 + + ${java.version} + + + + org.apache.maven.plugins + maven-surefire-plugin + 2.22.0 + + -Dfile.encoding=UTF-8 + + + + + + org.apache.maven.plugins + maven-jar-plugin + 3.1.2 + + + + true + ${launcher.class} + + + + + + org.apache.maven.plugins + maven-assembly-plugin + 3.5.0 + + + jar-with-dependencies + + + + true + ${launcher.class} + + + + + + make-assembly + package + + single + + + + + + + + \ No newline at end of file diff --git a/src/main/java/example/javafx/Main.java b/src/main/java/example/javafx/Main.java new file mode 100644 index 0000000..b15088d --- /dev/null +++ b/src/main/java/example/javafx/Main.java @@ -0,0 +1,7 @@ +package example.javafx; + +public class Main { + public static void main(String[] args) { + MainFx.main(args); + } +} diff --git a/src/main/java/example/javafx/MainFx.java b/src/main/java/example/javafx/MainFx.java new file mode 100644 index 0000000..61cd226 --- /dev/null +++ b/src/main/java/example/javafx/MainFx.java @@ -0,0 +1,25 @@ +package example.javafx; + +import javafx.application.Application; +import javafx.fxml.FXMLLoader; +import javafx.scene.Parent; +import javafx.scene.Scene; +import javafx.stage.Stage; + +public class MainFx extends Application { + + @Override + public void start(Stage stage) throws Exception { + FXMLLoader fxmlLoader = new FXMLLoader(getClass().getResource("/view/app.fxml")); + Parent root = fxmlLoader.load(); + + stage.setTitle("JavaFX Example"); + stage.setScene(new Scene(root, 640.0, 480.0)); + stage.setResizable(true); + stage.show(); + } + + public static void main(String[] args) { + MainFx.launch(args); + } +} diff --git a/src/main/resources/view/app.fxml b/src/main/resources/view/app.fxml new file mode 100644 index 0000000..3a0b39a --- /dev/null +++ b/src/main/resources/view/app.fxml @@ -0,0 +1,13 @@ + + + + + + + +
+
+