如何在maven项目中添加本地jar文件

644 阅读2分钟

在本教程中,我们将学习如何安装本地jar资源库。

默认情况下,Maven会从maven远程仓库或nexus仓库安装依赖项。

有些时候,我们需要从本地仓库、lib文件夹或自定义路径文件夹安装jar文件。

maven load and install local repository jar

我们可以通过多种方式在maven项目中安装本地依赖项

  • maven install:install-file命令
  • 在pom.xml中添加本地依赖项systemPath
  • 添加本地资源库

如何用命令行将jar文件安装到本地仓库

install-file 目标是一个用于安装本地jar文件的maven命令

这是从本地仓库或jar文件的路径安装jar的简单易行的方法。

下面是一个直接安装jar文件的命令

mvn install:install-file \
   -Dfile=jar-file-path> \
   -DgroupId=com.company.feature \
   -DartifactId=feature \
   -Dversion=version \
   -Dpackaging=packaging \
   -DgeneratePom=true
   -DcreateChecksum=true

install:install-file目标是安装到本地仓库,有以下参数 file - jar文件的路径,可以是绝对路径或相对路径 groupId- jar文件组id artifactId - jar文件的artifact id 版本 - jar版本 packaging - jar或war或ear文件

这个命令的输出会安装到本地仓库.m2/repository/com.company.feature/feature.jar/war文件中。

用本地版本库配置加载jar文件

第二种方法,在pom.xml的repository标签中加入lib文件夹路径。

在下面的代码片段中,创建了一个本地仓库,指向项目目录中的lib。

这个仓库也可以添加到.m2/settings.xml中,适用于所有maven项目。

<repositories>
    <repository>
        <id>local-repo</id>
        <url>file:///${project.parent.basedir}/lib</url>
    </repository>
</repositories>

你必须在pom.xml的依赖项中添加该依赖项。

例如,feature.jar在lib文件夹中。

<dependency>
        <groupId>com.company.feature</groupId>
        <artifactId>feature</artifactId>
        <version>1.0.0</version>
</dependency>

接下来运行下面的命令,在应用程序中安装jar文件

mvn deploy:deploy-file -DgroupId=com.company.feature -DartifactId=feature -Dversion=1.0.0 -Durl=file:./local-repo/ -DrepositoryId=local-repo -DupdateReleaseInfo=true -Dfile=file:///${project.parent.basedir}/lib

如何用依赖的systemPath安装本地仓库的jar?

最后,这是直接和简单的加载jar文件

请注意,systemPath 包含jar文件的位置。

<dependency>
    <groupId>com.company.feature</groupId>
    <artifactId>feature</artifactId>
    <version>1.0.0</version>
    <scope>system</scope>
    <systemPath>${project.basedir}/lib/feature.jar</systemPath>
</dependency>

总结一下

从本地文件夹加载jar文件可以通过多种方式实现。你可以根据你的需要选择方法。