JavaFx Maven打包以及依赖的处理

JavaFx Maven打包以及依赖的处理,第1张

JavaFx Maven打包以及依赖的处理 0. 项目结构

    



1. 在pom.xml中加入JavaFX Maven打包相关的插件


    4.0.0

    tech.zger
    Demo
    1.0-SNAPSHOT
    jar

    
        
        
            com.jfoenix
            jfoenix
            8.0.10
        
    

    
        
            
            
                maven-compiler-plugin
                3.8.1
                
                    1.8
                    1.8
                    UTF-8
                
            
            
            
                org.apache.maven.plugins
                maven-resources-plugin
                3.2.0
                
                    true
                    UTF-8
                
            
            
            
                org.apache.maven.plugins
                maven-jar-plugin
                3.0.2
                
                    
                        false
                        
                            true
                            lib/
                            
                            tech.zger.javafx.MainApplication
                        
                        
                            ./
                        
                    
                
            
            
                org.apache.maven.plugins
                maven-dependency-plugin
                3.2.0
                
                    
                        copy-dependencies
                        package
                        
                            copy-dependencies
                        
                        
                            jar
                            jar
                            
                            ${project.build.directory}/lib
                        
                    
                
            

        
    




2. 测试主类及fxml

MainApplication

package tech.zger.javafx;

import javafx.application.Application;
import javafx.fxml.FXMLLoader;
import javafx.scene.Parent;
import javafx.scene.Scene;
import javafx.stage.Stage;

import java.io.IOException;


public class MainApplication extends Application {

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

    @Override
    public void start(Stage primaryStage){
        try {
            Parent root = FXMLLoader.load(getClass().getResource("/view/main.fxml"));
            Scene scene = new Scene(root, 600, 400);
            primaryStage.setScene(scene);
            primaryStage.setTitle("JavaFX Maven打包测试");
            primaryStage.show();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

main.fxml






   
      
   



3. 打包


打包成功后可以看到lib目录




4. 把lib和Demo-1.0-SNAPSHOT.jar拷贝到桌面测试


运行Demo-1.0-SNAPSHOT.jar

至此JavaFX 的打包成功!!!



5. 其实Demo-1.0-SNAPSHOT.jar里面的meta-INF才是值得重视的。它指定了外部依赖的路径。

MANIFEST.MF

Manifest-Version: 1.0
Built-By: Administrator
Class-Path: lib/jfoenix-8.0.10.jar ./
Created-By: Apache Maven 3.8.2
Build-Jdk: 1.8.0_301
Main-Class: tech.zger.javafx.MainApplication

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

原文地址: http://outofmemory.cn/zaji/4828912.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-10
下一篇 2022-11-10

发表评论

登录后才能评论

评论列表(0条)

保存