【问题标题】:How to include library jar from lib to main jar with maven如何使用 maven 将库 jar 从 lib 包含到主 jar
【发布时间】:2021-09-10 04:07:09
【问题描述】:

我想在运行时将 jar 从另一个文件夹添加到我的主 jar,以使主 jar 轻量级。怎么做?我正在使用 Maven。我考虑了提供的范围,但我不知道如何添加这些罐子。

./lib/hikari.jar
./lib/h2.jar                        ./
===============                 =============
=             =                 =           =
=  Hikari.jar =                 =           =
=             =     --------->  =  Main.jar =
=  h2.jar     =                 =           =
=             =                 =           =
===============                 =============

【问题讨论】:

    标签: java maven jar compilation dynamic-compilation


    【解决方案1】:

    这取决于你是如何制作罐子的。

    您可以执行以下操作,使用 maven-dependency-plugin 复制您的库,然后配置 maven-jar-plugin 以使用类路径中的库,无需更改依赖项的范围。

    <plugin>
        <artifactId>maven-dependency-plugin</artifactId>
        <executions>
            <execution>
                <phase>package</phase>
                <goals>
                  <goal>copy-dependencies</goal>
                </goals>
                <configuration>
                  <outputDirectory>${project.build.directory}/lib</outputDirectory>
                </configuration>
            </execution>
        </executions>
    </plugin>
    
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-jar-plugin</artifactId>
      <version>3.2.0</version>
      <configuration>
        <archive>
          <manifest>
            <addClasspath>true</addClasspath>
            <classpathPrefix>lib/</classpathPrefix>
            <mainClass>your.main.Class</mainClass>
            <useUniqueVersions>false</useUniqueVersions>
          </manifest>
        </archive>
      </configuration>
    </plugin>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-15
      • 2013-07-07
      • 2017-11-06
      • 2013-08-29
      • 2019-09-03
      • 2012-12-22
      相关资源
      最近更新 更多