在pom.xml里加入:
<build> <plugins> <!-- 打包和部署运行JAR项目--> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <configuration> <outputDirectory>D:\workspace\gitee\chatgpt4mp\chatgpt4mp\target\</outputDirectory> <!-- MainClass in mainfest make a executable jar --> <archive> <manifest> <mainClass>com.chatgpt.MainApplication</mainClass> </manifest> </archive> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-dependency-plugin</artifactId> <executions> <execution> <id>copy</id> <phase>package</phase> <goals> <goal>copy-dependencies</goal> </goals> <configuration> <outputDirectory>D:\workspace\gitee\chatgpt4mp\chatgpt4mp\target\chat4mp_lib</outputDirectory> </configuration> </execution> </executions> </plugin> </plugins> </build>
生成初包后使用
java [options] -jar xxx.jar [args] java [options] -cp xxx.jar classname [args]
注意:
java -jar
和java -cp
不能混用
使用-jar
时(如java -jar main.jar
),main.jar
的外部依赖,需要在MANIFEST.MF
中指定Class-Path
。
使用-cp
时(如java -cp all.jar package.Main
),指定依赖的所有jar
包后, 再指明要运行的主类即可。
比如:
java -cp D:/mnt/jars/chat4mp_lib/* com.chatgpt.MainApplication