计算机系统应用教程网站

网站首页 > 技术文章 正文

简单2步实现maven打包java工程并将依赖jar输出到指定目录

btikc 2024-10-18 04:41:24 技术文章 15 ℃ 0 评论

最近由于为了验证的需要,在本地使用maven打包时需要将工程依赖的jar同步输出到指定文件夹, 通过验证,将此方法分享给大家

1. pom文件中引用如下2个插件

<plugin>
  <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-jar-plugin</artifactId>
     <version>3.3.0</version>
       <configuration>
          <archive>
            <manifest>
              <!-- 是否指定classpath -->
                <addClasspath>true</addClasspath>
                <classpathPrefix>lib/</classpathPrefix>
                <!-- 指定mainClass -->
                <mainClass>com.example.grpccli.ProductClient</mainClass>
            </manifest>
          </archive>
       </configuration>
</plugin>

<!-- Maven Dependency Plugin -->
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-dependency-plugin</artifactId>
    <version>3.1.2</version>
    <executions>
        <execution>
            <id>copy-dependencies</id>
            <phase>package</phase>
            <goals>
                <goal>copy-dependencies</goal>
            </goals>
             <!-- 指定将依赖的jar输出到编译目录下的lib目录里 -->
            <configuration>
                <outputDirectory>${project.build.directory}/lib</outputDirectory>
            </configuration>
        </execution>
    </executions>
</plugin>

2.通过idea 执行package进行构建jar(或者命令行执行mvn package构建)

2.1 构建完成后可看到除了输出目标jar之外,还在lib目录下输出所有依赖的jar

2.2 查看目标jar中MANIFEST.MF文件中classpath信息和mainclass信息

3.通过java -jar启动服务,会自动加载lib目录中依赖的jar

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表