我有一个maven多模块项目正在运作。我还有一个代码(abc.jar-non maven),其中一些功能要集成到现有maven项目的一个模块(比如module1)中。我如何将abc.jar导入我的maven项目?
我尝试了以下操作:创建/src/main/lib
并将jar复制到lib
。已配置pom.xml
:
<dependency>
<groupId>abc</groupId>
<artifactId>abc</artifactId>
<version>1.0</version>
<systemPath>${base.dir}/lib/abc.jar</systemPath>
<scope>system</scope>
</dependency>
还尝试使用<systemPath>${project.basedir}/lib/abc.jar</systemPath>
但是,它警告'dependencies.dependency.systemPath' for abc:abc:jar should not point at files within the project directory, unresolvable
。
有人告诉我,这可以通过组装来实现。但我无法实现。
请帮忙。我正在使用maven 2.4v
答案 0 :(得分:0)
SystemPath对我工作正常,并尝试使用$ {baseDir}而不是$ {base.dir},或将maven版本更改为3.0
答案 1 :(得分:0)
答案 2 :(得分:0)
使用 $ {basedir} 或 $ {project.basedir} 表达式而不是 $ {base.dir} 变量。所有表达都区分大小写。
您可以通过maven-help-plugin的评估目标来尝试。
mvn help:evaluate
答案 3 :(得分:0)
感谢。我尝试使用程序集插件来完成任务。它起作用了。
<assembly>
<id>bin</id>
<formats>
<format>tar</format>
</formats>
<includeBaseDirectory>false</includeBaseDirectory>
<dependencySets>
<dependencySet>
<useProjectArtifact>true</useProjectArtifact>
<outputDirectory>lib</outputDirectory>
<unpack>false</unpack>
</dependencySet>
</dependencySets>
<files>
<file>
<source>src/main/lib/abc.jar</source>
<outputDirectory>lib</outputDirectory>
</file>
</files>
</assembly>