我正在处理项目结构为
的项目根 LIB xyz.jar 模块 模块1 模块2 现在我想在module1中包含xyz.jar,但是由于项目的多模块结构,我无法直接通过maven添加jar。
我尝试使用
<plugin>
<groupId>org.commonjava.maven.plugins</groupId>
<artifactId>directory-maven-plugin</artifactId>
<version>0.1</version>
<executions>
<execution>
<id>directories</id>
<goals>
<goal>highest-basedir</goal>
</goals>
<phase>initialize</phase>
<configuration>
<property>multi.module.project.root.dir</property>
</configuration>
</execution>
</executions>
</plugin>
然后使用
<dependency>
<groupId>org.abc.com</groupId>
<artifactId>xyz</artifactId>
<version>0.1.0</version>
<scope>system</scope>
<systemPath>${multi.module.project.root.dir}/lib/xyz.jar</systemPath>
</dependency>
但抛出错误指定jar的绝对路径。 接下来我尝试使用de
pendency management in parent pom by specifying
<dependency>
<groupId>org.abc.com</groupId>
<artifactId>xyz</artifactId>
<version>0.1.0</version>
<scope>system</scope>
<systemPath>${pom.basedir}/lib/xyz.jar</systemPath>
</dependency>
这解决了依赖关系,但我无法在module1的子pom中使用依赖关系
我该如何解决?
答案 0 :(得分:0)
您正在使用的directory-maven-plugin的文档明确说明了插件生成的变量:
它们仅在插件配置中有用,而不是在POM插入期间。
这意味着你不能像你正在做的那样使用它。
作为替代方案,我会考虑提及this SO answer。