一、新建Maven項目,Packaging為jar
二、新建主類
主類代碼如下:
package com.example.demo;
import javax.swing.JFrame;
public class GuiMain extends JFrame {
private static final long serialVersionUID = 1L;
public static void main(String[] args) {
GuiMain gm = new GuiMain();
gm.setTitle("JFrame窗口");
gm.setSize(640, 480);
gm.setResizable(false);
gm.setLocationRelativeTo(null);
gm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
gm.setVisible(true);
}
}
三、pom.xml詳細配置
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.example</groupId>
<artifactId>DemoGui</artifactId>
<version>1.0</version>
<packaging>jar</packaging>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<project.build.sourceVersion>1.8</project.build.sourceVersion>
<project.build.targetVersion>1.8</project.build.targetVersion>
</properties>
<dependencies>
<!-- JSON -->
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.8.5</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.57</version>
</dependency>
</dependencies>
<build>
<finalName>DemoGui</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.0</version>
<configuration>
<source>${project.build.sourceVersion}</source>
<target>${project.build.targetVersion}</target>
<encoding>${project.build.sourceEncoding}</encoding>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.22.1</version>
<configuration>
<!-- 打包時跳過單元測試 -->
<skipTests>true</skipTests>
</configuration>
</plugin>
<!-- 打包指令mvn clean package -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>3.2.1</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<filters>
<filter>
<artifact>*.*</artifact>
<excludes>
<exclude>META-INF/*.SF</exclude>
</excludes>
</filter>
</filters>
<transformers>
<transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
<mainClass>com.example.demo.GuiMain</mainClass>
</transformer>
</transformers>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
四、清理、編譯、打包
項目結構最終如下:
打開命令提示符,cd到該項目的根目錄下,即與pom.xml同一目錄,然后運行mvn clean compile package,效果如圖所示:
進入項目中的target目錄,文件列表如圖所示:
五、運行
將DemoGui.jar拷貝至指定位置,如E:\release\java下,如圖所示 :
通過命令提示符運行java -jar DemoGui.jar,即可將程序運行。
或者
新建一個批處理文件run.bat,將該指令寫在批處理文件中,以后雙擊運行該批處理文件,即可將程序運行。
運行后效果如圖所示:
通過run.bat運行會自帶一個控制台輸出,如果不想要,修改運行指令為start javaw -jar DemoGui.jar即可。