我下载了基于Eclipse,Ant或其他东西的旧项目,我不知道这个构建系统(我使用Maven \ Gradle)。项目源手动转换为Maven,但项目有更多的jar库。它们是在IDEA(Project Structure -> Modules -> Dependencies
)的帮助下导入到项目中的,但是只在.iml
文件中定义了库。
当我试图在Maven-Maven显示错误的帮助下在.jar中构建项目时,它无法从库中找到类(但在源代码中都很好)。我在Internet示例中找到了,就像在此代码示例中一样:
<dependency>
<groupId>example</groupId>
<artifactId>example</artifactId>
<version>examle</version>
<scope>system</scope>
<systemPath>${project.basedir}/libs/example.jar</systemPath>
</dependency>
但这没有用。库也是旧的,它们是由旧的构建工具创建的,它们不会写工件ID,组ID等,所以我不知道这些信息。
如果我不知道关于它们的信息(组,工件ID),我如何在pom.xml
中编写对本地.jar库的依赖?
UPD_0:
当我尝试仅设置库的系统路径时,我会这样做:
答案 0 :(得分:4)
您需要的只是在
中设置正确的路径 <systemPath>${project.basedir}/libs/example.jar</systemPath>
组,工件ID和版本是用户定义的信息。所以你可以按照自己的意愿定义它。
答案 1 :(得分:1)
尝试从命令行/终端在本地存储库中安装此jar,如下所示。然后使用您在命令中给出的包和版本添加依赖项,而不使用作为系统的作用域
mvn install:install-file -Dfile=<path>/example.jar
-DgroupId=com.something
-DartifactId=example
-Dversion=<give some version>
-Dpackaging=jar
-DgeneratePom=true