gpt4 book ai didi

java - maven 将本地类目录添加到模块的类路径

转载 作者:行者123 更新时间:2023-11-30 11:46:12 26 4
gpt4 key购买 nike

我知道这有点超出 maven 的范围,但我需要将包含已编译类的本地目录添加到模块的类路径中。我看到了:Maven: add a folder or jar file into current classpath ,但这仅适用于 jar 。

我需要有一个类似的解决方案,但在本地文件系统的目录中有编译类。这可能吗?

谢谢!

最佳答案

经过一些广泛的研究,我发现我最好的选择是使用 maven-antrun-plugin 并在 process-resources 阶段,从类中生成一个 jar 并将其作为具有系统范围和 systemPath 的依赖项添加到 jar我刚建好。

Pom 片段:

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.6</version>
<executions>
<execution>
<phase>process-resources</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<target name="mpower.jar">
<taskdef resource="net/sf/antcontrib/antcontrib.properties" classpath="${env.USERPROFILE}\.m2\repository\ant-contrib\ant-contrib\1.0b3\ant-contrib-1.0b3.jar"/>

<if>
<available file="${classes.dir}" type="dir"/>
<then>
<jar destfile="${env.TEMP}\classes.jar">
<fileset dir="${classes.dir}\classes">
<include name="**/**"/>
</fileset>
</jar>
</then>
<else>
<fail message="${classes.dir} not found. Skipping jar creation"/>
</else>
</if>
</target>
</configuration>
</execution>
</executions>

....

    <dependency>
<groupId>ant-contrib</groupId>
<artifactId>ant-contrib</artifactId>
<version>1.0b3</version>
</dependency>
<dependency>
<groupId>com.my.code</groupId>
<artifactId>classes.jar</artifactId>
<version>1.1</version>
<scope>system</scope>
<systemPath>${env.TEMP}\classes.jar</systemPath>
</dependency>

关于java - maven 将本地类目录添加到模块的类路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9925263/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com