項目依賴有第三方jar包,
方式一,idea打包
或者
file=>project structure =>Artifacts +
選擇你的main方法,jar處理選擇單獨輸出,程序清單選擇src,
你會看到,所有依賴jar包都單獨處理了,和你的主程序在同一路徑下,如果想把依賴jar包轉到 lib下,
然后將jar拖入lib目錄下,並修改 classpath
在每個jar包前,加上路徑 /lib
最后
打出jar包,jar包路徑默認在項目的out路徑下
運行命令,切換到jar包所在文件夾后 java -jar XXX.jar
方式二,maven插件
pom.xml
添加以下代碼
<build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <configuration> <archive> <manifest> <addClasspath>true</addClasspath> <classpathPrefix>lib/</classpathPrefix> <mainClass>com.beyonds.dam.DataTransferMain</mainClass> </manifest> </archive> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-dependency-plugin</artifactId> <executions> <execution> <id>copy-lib</id> <phase>prepare-package</phase> <goals> <goal>copy-dependencies</goal> </goals> <configuration> <outputDirectory>${project.build.directory}/lib</outputDirectory> <overWriteReleases>false</overWriteReleases> <overWriteSnapshots>false</overWriteSnapshots> <overWriteIfNewer>true</overWriteIfNewer> </configuration> </execution> </executions> </plugin> </plugins> </build>
首先設定好,你的main方法,然后運行命令
這時你的項目jar包已經打包完成,在執行
copy 第三方jar包,路徑為 target/dependency ,你需要copy一份到同級下,文件夾名稱為lib。這個是在第一個
<classpathPrefix>lib/</classpathPrefix> 中設置的,可以自己調整。
打包出的項目jar包在 target路徑下,依賴包在 dependency下,由於classpath設置的是 lib,需要搞一個統計副本。
運行命令,到項目jar包路徑下,執行 java -jar XXX.jar