2022-12-28
Notes on Installing Java and JavaFX
Some notes on setting up Java for my course.
Installing Java
First step is to get the JDK, the Java Development Kit.
https://jdk.java.net/19/
Get the zip file and extract it to C:bin.
Now we need to add java to the environment so that windows knows about it.
This is a system variable.
JAVA_HOME = C:\bin\jdk-19.0.1
You will also need to add the bin directory to the PATH so java can be used from the commandline.
C:\bin\jdk-19.0.1\bin
Open the command prompt and simply type in java. This should result in the java help being printed.
Now we have Java ready to go.
Installing JavaFX
Next up, javafx, the GUI library.
https://gluonhq.com/products/javafx/
Download the SDK, the software development kit as a zip. Extract the zip to C:bin as well.
Eclipse - The Editor
Download Eclipse as a zip package and we will do the same thing as before, extract it to C:bin.
https://www.eclipse.org/downloads/packages/
We should now have the following structure in C:bin:
C:\bin\jdk-19.0.1
C:\bin\javafx-sdk-19
C:\bin\eclipse
Hello World in Java
The first step is to make sure java is installed properly before we get to JavaFX.
To do this, make a hello-world project and quickly get something on the screen.
package helloworld;
class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World!");
}
}
Hello World with JavaFX
The first step to getting JavaFX working with eclipse is to follow the below instructions:
https://openjfx.io/openjfx-docs/#install-javafx
A hello world example
https://docs.oracle.com/javafx/2/get_started/hello_world.htm
import javafx.application.Application;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;
public class HelloWorld extends Application {
public static void main(String[] args) {
launch(args);
}
@Override
public void start(Stage primaryStage) {
primaryStage.setTitle("Hello World!");
Button btn = new Button();
btn.setText("Say 'Hello World'");
btn.setOnAction(new EventHandler<ActionEvent>() {
@Override
public void handle(ActionEvent event) {
System.out.println("Hello World!");
}
});
StackPane root = new StackPane();
root.getChildren().add(btn);
primaryStage.setScene(new Scene(root, 300, 250));
primaryStage.show();
}
}