Maven - 基于依赖关系导出Classpath而没有.m2开销

问题描述 投票:0回答:1

下面底部的pom代码创建一个类路径文件,其中包含相对于.m2 maven缓存的所有jar文件:

${M2_REPO}\org\slf4j\slf4j-api\1.7.25\slf4j-api-1.7.25.jar;${M2_REPO}\com\github\jnr\jnr-ffi\2.1.7\jnr-ffi-2.1.7.jar;...

Al依赖项被巧妙地复制到target / lib

${project.build.directory}/lib

我想知道如何使用target / lib目录的路径而不是maven缓存来创建类路径的maven:

target/libslf4j-api-1.7.25.jar:target/lib/jnr-ffi-2.1.7.jar:...

我使用以下maven代码:

    <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-dependency-plugin</artifactId>
    <version>3.0.1</version>
    <executions>
      <execution>
        <id>copy-dependencies</id>
        <phase>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>
      <execution>
        <id>build-classpath</id>
        <phase>package</phase>
        <goals>
          <goal>build-classpath</goal>
        </goals>
        <configuration>
          <attach>true</attach>
          <outputFile>${project.build.directory}/classpath</outputFile>
        </configuration>
      </execution>
    </executions>
    </plugin>

maven classpath
1个回答
0
投票

以下是我的工作:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-dependency-plugin</artifactId>
    <version>3.0.1</version>
    <executions>
      <execution>
        <id>copy-dependencies</id>
        <phase>package</phase>
        <goals>
          <goal>copy-dependencies</goal>
        </goals>
        <configuration>
          <outputDirectory>${project.build.directory}${file.separator}lib</outputDirectory>
          <overWriteReleases>false</overWriteReleases>
          <overWriteSnapshots>false</overWriteSnapshots>
          <overWriteIfNewer>true</overWriteIfNewer>
        </configuration>
      </execution>
      <execution>
        <id>build-classpath</id>
        <phase>package</phase>
        <goals>
          <goal>build-classpath</goal>
        </goals>
        <configuration>
          <attach>true</attach>
          <outputFile>${project.build.directory}${file.separator}classpath</outputFile>
          <prefix>target${file.separator}lib</prefix>
        </configuration>
      </execution>
    </executions>
  </plugin>
© www.soinside.com 2019 - 2024. All rights reserved.