Maven项目中添加本地jar包

项目中经常需要用到自己的jar包或者是中心库没有的jar包;常用的方法一种是将jar包安装到本地仓库,然后在项目的pom.xml文件中引用,还有一种是将jar包放在项目中,比如WEB_INF/lib文件夹下.

在这里记录一下两种方式分别是怎么操作的

1、将jar包安装到本地仓库
很多开发工具都集成有将jar包安装到本地仓库的功能,比如eclipse,这里说下使用Maven命令安装jar包的方式;
在命令行使用命令:mvn install,注意命令不能换行,中间参数用空格分隔,格式如下:

1
2
3
4
5
6
mvn install:install-file
-DgroupId=<groupId> : 设置项目代码的包名(比如org.apache)
-DartifactId=<artifactId> : 设置项目名或模块名(比如shiro-core)
-Dversion=1.0.0 : 版本号(比如1.2.2)
-Dpackaging=jar : 文件类型(jar包)
-Dfile=<myfile.jar> : 需要安装的文件路径(比如/root/shiro-core-1.2.2.jar)

# 安装示例:

1
mvn install:install-file -DgroupId=org.apache -DartifactId=shiro-core -Dversion=1.2.2 -Dpackaging=jar -Dfile=/root/shiro-core-1.2.2.jar

# 这样执行安装完成之后,在Maven本地仓库的对应路径中就有了相应的jar包,可以在本地项目中直接引用了
# 比如以上命令执行后的安装位置就是:
repository/org/apache/shiro/shiro-core/1.2.2/shiro-core-1.2.2.jar

2、引用放在项目中的jar包
通常本地jar包在项目中的位置是:src/main/webapp/WEB-INF/lib,这里就以这个做示例
比如这里有一个jar文件:src/main/webapp/WEB-INF/lib/fastdfs_client_v1.20.jar
我们需要在项目的pom.xml文件中使用<dependency>标签来引入jar包
# 这里的 <groupId><artifactId><version>都是可以随便写的,但是不能没有,比如引用上面地址的jar包:

1
2
3
4
5
6
7
<dependency>  
<groupId>common</groupId>
<artifactId>fastdfs_client</artifactId>
<version>1.20</version>
<scope>system</scope>
<systemPath>${project.basedir}/src/main/webapp/WEB-INF/lib/fastdfs_client_v1.20.jar</systemPath>
</dependency>

# <scope>必须填写system<systemPath>写上jar包相对于项目的地址就行了;

明人不说暗话,如果你觉得可以的话,你懂的!