VScode Javafx Maven

配置环境

vscode 版本:1.48.1

jdk:1.8

vscode 插件

Java Extension Pack,安装完成之后做如下配置:

  1. 默认Windows 的java环境变量已经配置好
  2. 快捷键 Ctrl+Shift+P,输入Java Configuration Runtime
  3. 点击User Setting,然后点击在setting.json中编辑,在json文件中加入如下配置,java.home 后面的路径为jdk路径
........
"java.home": "D:/Java/jdk1.8.0_261",
.......

不使用 maven

  1. 安装插件完成之后 按下快捷键Ctrl+shift+p新建java项目
  2. 如果是刚打开的话,左下角会显示正在激活拓展,等待一会儿后,会出现如下界面,我们不使用框架,因此直接选择No build tools
  3. 接着会弹出如下界面,我们选择或者新建一个文件夹,来作为项目的载体
  4. 接着输入项目的名字,按enter确认
  5. 接着出现如下界面,其中的红框所指的 Run|Debug 要可能不会立即出现,我们需要等一会
  6. 点击 Run 或者快捷键 Ctrl+F5 ,下面的终端上显示出运行结果。
  7. 接下来我们来写一个javafx项目
import javafx.application.Application;
import javafx.stage.Stage;

public class App extends Application {

    @Override
    public void start(Stage primaryStage) throws Exception {
        primaryStage.setHeight(400);
        primaryStage.setWidth(400);
        primaryStage.setTitle("hellojfx");
        primaryStage.show();
    }

    public static void main(String[] args) {
        launch(args);
    }
}
  1. 点击Run得到如下结果

使用maven

  1. 快捷键 Ctrl+Shift +P打开setting.json 文件
  2. 添加如下配置项,后面的Maven路径根据自己的maven路径修改,setting.xml自己修改
.......
"maven.executable.path": "D:/ab_code/apache-maven-3.6.3/bin/mvn.cmd",
 "java.configuration.maven.userSettings": "D:/ab_code/apache-maven-3.6.3/conf/settings.xml",
 .......
  1. 快捷键 Ctrl+Shift+P ,输入Maven,选择从Maven 原型创建项目
  2. 等待一会之后,然后选择模板,在这里选择quickstart模板原型,然后选择版本1.4
  3. 接着选择项目存放目录,选择之后需要等待一会儿,然后在终端中跳出如下界面,在终端中输入groupId等设置,直接enter,则是插件给出的默认配置
  4. 需要注意的是,这是时候vscode 并不会跳出这个maven项目的vscode界面,我们需要手动在文件管理器中找到并右键使用vscode打开该项目,打开后右下角会出现一个提示框问监测到java项目是否要导入,这里我们点击yes,等一会之后左边的项目树就会出现一个target文件夹,里面包含classes与test-classes文件夹。
  5. 这时候我们编写jfx demo 的时候会发现根本没有代码提示
  6. 因此下一步我们需要导入的是jfx的maven依赖
    Ctrl+Shift+P 输入maven 然后选择添加依赖,搜索

org.openjfx


然后选择 javafx-controls 导入即可

VSCode配置Java vscode配置javafx_javafx

  1. 接着打开 pom.xml ,Ctrl+S保存一下,过一会右下角就会出现,点击 Now。
  2. 接着回到 jfx的demo 里面就可以看到javafx的提示啦!

11.jfx demo

package test1;

import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.stage.Stage;

/**
 * Hello world!
 *
 */
public class App extends Application {
    public static void main(String[] args) {

        launch(args);
    }

    @Override
    public void start(Stage arg0) throws Exception {
        Button btn = new Button("btn1");
        btn.setPrefSize(200, 200);
        Group gp = new Group();
        gp.getChildren().add(btn);
        Scene scene = new Scene(gp);

        arg0.setScene(scene);
        arg0.setWidth(500);
        arg0.setHeight(500);
        arg0.show();
    }
}