javaFx中文官网:https://openjfx.cn/
教程:https://code.makery.ch/zh-cn/library/javafx-tutorial/
环境:win10,jdk11,eclipse的javaSE版本
1、下载并安装java11。
1.1配置环境变量。
略
1.2使用jlink命令导出jre
注意:java11的jdk不包含jre需要通过手动添加的方式。
在jdk安装目录下使用命令:
bin\jlink.exe --module-path jmods --add-modules ALL-MODULE-PATH --output jre
表示添加所有模块至jre目录下
图片.png
2、eclipse中配置jdk的jre
前言:jdk的jre为什么要手动导入是因为考虑到模块化开发的问题,需要什么拿什么。但是对于新手开发者来说这并不重要,重要的是你的第一个程序能运行。我用的最新版本eclipse中,你的jre如果未导入全直接就报错了,项目上一个红叉,而且提示无法找到主类。所以第一步选择添加了全部模块,直接万事大吉。
2.1配置全局的jre
图片.png
图片.png
图片.png
图片.png
2.2配置某个项目的jre
图片.png
图片.png
图片.png
3、下载javaFx的SDK的11版本。
javaFx官方有教程不过没有中文翻译。
3.1配置SDK到eclipse中。
1
2
3
添加虚拟机参数
--module-path "自己安装的路径\javafx-sdk-15.0.1\lib" --add-modules javafx.controls,javafx.fxml
图片.png
图片.png
添加javaFx的sdk至项目:
图片.png
图片.png
图片.png
然后运行官方案例:
图片.png
code:
Main.java
package sample;
import javafx.application.Application;
import javafx.fxml.FXMLLoader;
import javafx.scene.Parent;
import javafx.scene.Scene;
import javafx.stage.Stage;
public class Main extends Application {
@Override
public void start(Stage primaryStage) throws Exception{
Parent root = FXMLLoader.load(getClass().getResource("sample.fxml"));
primaryStage.setTitle("Hello World");
primaryStage.setScene(new Scene(root, 300, 275));
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}
sample.fxml
<?import javafx.geometry.Insets?>
<?import javafx.scene.layout.GridPane?>
<?import javafx.scene.control.Button?>
<?import javafx.scene.control.Label?>
<GridPane fx:controller="sample.Controller"
xmlns:fx="http://javafx.com/fxml" alignment="center" hgap="10" vgap="10">
</GridPane>
Conroller.java
package sample;
public class Controller {
}
效果如下:
一个白框
图片.png