JAVAFX入门教程-Hello

JAVAFX入门教程-Hello,第1张

JAVAFX入门教程-Hello

环境:使用maven进行javaFX项目构建,JDK版本:11
使用IDEA创建一个maven工程,然后编辑依赖如下:

配置maven依赖
 

    UTF-8
    11
    3.9.0
    11
    0.0.8


    
    
        org.openjfx
        javafx-controls
        ${javafx.version}
    
    
        org.openjfx
        javafx-fxml
        ${javafx.version}
    

    
    
        org.openjfx
        javafx-maven-plugin
        ${javafx.maven.plugin.version}
        maven-plugin
    
    
        org.apache.maven.plugins
        maven-compiler-plugin
        ${maven.compiler.version}
        maven-plugin
    
插件配置
  
        
            maven-compiler-plugin
            
                ${maven.compiler.release}
                ${maven.compiler.release}
            
        
        
        
            org.openjfx
            javafx-maven-plugin
            0.0.8
            
                
                ry.main.SearchMain
                
                rySearch
                
                -Xmx1024m
            
        
    
启动类vm参数配置

PATH_TO_FX 为环境变量,该环境变量指向 javaFX的SDK文件夹。

附上SDK下载路径:https://gluonhq.com/products/javafx/
我下载的windows版本,下载完成在IDEA或者windows中配置好环境变量后就可以在启动类中添加如下VM参数

--module-path ${PATH_TO_FX} --add-modules javafx.controls,javafx.fxml

之后编写代码,启动应用即可

启动类代码如下:

package ry.main;

import javafx.application.Application;
import javafx.scene.Parent;
import javafx.scene.Scene;
import javafx.scene.control.Label;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;


public class SearchMain extends Application {

    public void start(Stage stage) throws Exception {
        String javaVersion = System.getProperty("java.version");
        String javafxVersion = System.getProperty("javafx.version");
        Label l = new Label("Hello, JavaFX " + javafxVersion + ", running on Java " + javaVersion + ".");
        Scene scene = new Scene(new StackPane(l), 640, 480);
        stage.setScene(scene);
        stage.show();
    }

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

}

启动运行效果如下:

附上jlink客户端运行时的maven插件配置:

   maven插件支持的命令参考如下:
    javafx:运行选项
    该插件默认包括:  -module-path和-add-modules选项-classpath。
    或者,可以使用以下方式修改配置:
    mainClass: 主类,全限定名,带或不带模块名
    workingDirectory: 当前工作目录
    skip: 跳过执行。值:假(默认),真
    outputFile: 重定向进程输出的文件
    options:传递给可执行文件的 VM 选项列表。
    commandlineArgs: 执行程序的参数用空格分隔
    includePathExceptionsInClasspath:解析模块路径时,将此值设置为 true 将包括在类路径中生成路径异常的依赖项。默认情况下,该值为 false,并且不会包含这些依赖项。
    runtimePathOption:默认情况下,插件会将每个依赖项放在模块路径或类路径上(基于某些因素)。设置配置后runtimePathOption,插件会将所有依赖项放在模块路径或类路径上。
    如果设置为MODULEPATH,则需要模块描述符。所有依赖项都需要模块化或包含 Automatic-Module-Name。
    如果设置为CLASSPATH,则需要一个 Launcher 类(如这个)来运行 JavaFX 应用程序。此外,如果存在模块信息描述符,它将被忽略。
    值:MODULEPATH 或 CLASSPATH。
    该插件使用“jdk”工具支持 Maven 工具链。


jlink运行时支持的其他命令参考如下:

    javafx:jlink 选项
    jlink可以设置相同的命令行选项:

    stripDebug: 去除调试信息。值:假(默认)或真
    stripJavaDebugAttributes:去除 Java 调试属性(从 Java 13 开始),值:false(默认)或 true
    compress:正在使用的资源的压缩级别。值:0(默认)、1、2。
    noHeaderFiles:删除includes生成的运行时映像中的目录。值:假(默认)或真
    noManPages:删除man生成的运行时映像中的目录。值:假(默认)或真
    bindServices:添加绑定服务的选项。值:假(默认)或真
    ignoreSigningInformation:添加忽略签名信息的选项。值:假(默认)或真
    jlinkVerbose:添加详细选项。值:假(默认)或真
    launcher:添加具有给定名称的启动器脚本。
    如果options已定义,这些将作为 vm 选项传递给启动器脚本。
    如果commandLineArgs已定义,这些将作为命令行参数传递给启动器脚本。
    jlinkImageName:带有生成的运行时映像的文件夹的名称
    jlinkZipName:设置后,创建生成的运行时映像的 zip
    jlinkExecutable:jlink可执行文件。它可以是完整路径或可执行文件的名称(如果它在 PATH 中)。
    jmodsPath: 使用本地 JavaFX SDK 时,设置本地 JavaFX jmods 的路

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5717129.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-18

发表评论

登录后才能评论

评论列表(0条)

保存