idea 打jar包(包含第三方jar)

项目依赖有第三方jar包,java

方式一,idea打包apache

 

 或者maven

 

 file=>project structure =>Artifacts +ide

 

 

 

 选择你的main方法,jar处理选择单独输出,程序清单选择src,ui

 

 

 你会看到,全部依赖jar包都单独处理了,和你的主程序在同一路径下,若是想把依赖jar包转到 lib下,idea

 

 而后将jar拖入lib目录下,并修改 classpathspa

 

 在每一个jar包前,加上路径 /lib插件

 

 

最后3d

 

打出jar包,jar包路径默认在项目的out路径下code

 运行命令,切换到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
相关文章
相关标签/搜索