maven指定本地jar包

来自:https://blog.youkuaiyun.com/zhengxiangwen/article/details/50734565

一、怎么添加jar到本地仓库呢?
步骤:
1.cmd命令进入该jar包所在路径
2.执行命令:
mvn install:install-file -Dfile=lucene-queryparser-4.6.1.jar -DgroupId=org.apache.lucene -DartifactId=lucene-queryparser -Dversion=4.6.1 -Dpackaging=jar
其中:-DgroupId和-DartifactId的作用是指定了这个jar包在repository的安装路径,只是用来告诉项目去这个路径下寻找这个名称的jar包。
比如:
mvn install:install-file -Dfile=hadoop-hdfs-2.2.0.jar -DgroupId=org.apache.hadoop -DartifactId=hadoop-hdfs -Dversion=2.2.0 -Dpackaging=jar
就是指把hadoop-hdfs-2.2.0.jar安装到repository\org.apache.hadoop\hadoop-hdfs\2.2.0目录下,执行完命令后,如果需要在项目中使用这个jar,则在pom.xml中添加如下配置即可:
<dependency>
      <groupId>org.apache.hadoop</groupId>
      <artifactId>hadoop-hdfs</artifactId>
      <version>2.2.0</version>
</dependency>

注意在每个参数前有个-D

二、怎么在pom.xml中添加项目中libs下的jar呢,而不是从本地仓库中添加?

1、首先将要添加的jar包复制到项目中的libs文件夹下

2、然后在pom.xml中添加如下代码:

<dependency>

<groupId>htmlunit</groupId>

<artifactId>htmlunit</artifactId>

<version>2.21-OSGi</version>

<scope>system</scope>

<systemPath>${project.basedir}/libs/htmlunit-2.21-OSGi.jar</systemPath>

</dependency>

注意scope元素和systemPath元素,其中systemPath元素指定的就是jar包在项目中的路径。

注意libs文件夹下的这个jar包不需要Add to Build Path
下面是maven中央仓库的地址:http://mvnrepository.com/artifact/net.sourceforge.htmlunit/htmlunit/2.21

可以在这里搜索想要的jar包,然后复制对应的依赖代码到你项目中的pom.xml中,则对应的jar包将下载到你本地的maven仓库中,以提供给你使用。

### 使用 Maven本地 JAR 文件 为了将本地JAR 文件通过 Maven 进行打并管理,通常有两种主要方法: #### 方法一:安装本地 JAR本地仓库 如果希望仅在本机上使用该 JAR 文件而不打算将其发布至远程仓库,可以通过 `mvn install:install-file` 命令来实现。此命令允许手动指定要安装的目标文件及其元数据。 ```bash mvn install:install-file \ -Dfile=path/to/your.jar \ -DgroupId=com.example.groupid \ -DartifactId=example-artifact-id \ -Dversion=1.0-SNAPSHOT \ -Dpackaging=jar ``` 这条指令会把给定路径下的 JAR 文件按照所提供的坐标信息(group ID、artifact ID 和版本号)安装到用户的本地 Maven 仓库中[^2]。 #### 方法二:构建项目并将资源纳入其中 当拥有完整的 Java 工程结构时,更推荐的方式是编写 POM 文件定义项目的依赖关系和其他配置项,并利用标准生命周期阶段完成编译和打操作。对于已经存在的第三方库而未托管于公共仓库的情况,在工程根目录下创建一个名为 `libs` 的子文件夹放置这些外部 JAR 文件;接着修改 pom.xml 添加如下片段引入它们作为系统的范围依赖: ```xml <dependencies> <!-- Other dependencies --> <dependency> <groupId>com.somevendor</groupId> <artifactId>somelib</artifactId> <version>1.0</version> <scope>system</scope> <systemPath>${project.basedir}/libs/some-lib.jar</systemPath> </dependency> </dependencies> ``` 这种方式使得整个过程更加自动化且易于维护,同时也便于团队成员共享相同的环境设置[^3]。 一旦完成了上述任一步骤之后,执行常规的 `mvn clean package` 或者其他合适的生命周期目标就可以生成最终产物了。这期间 Maven 将自动处理所有必要的步骤,括但不限于源码编译、测试运行以及最后的打工作[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值