考虑到setting中url的jar包比较老,如果需要用最新的,则需要将jar包手动下载到本地仓库。
比如我下载了
lucene-queryparser-461jar
怎么添加到本地仓库呢?
步骤:
1cmd命令进入该jar包所在路径
2执行命令
mvn install:install-file -Dfile=lucene-queryparser-461jar -DgroupId=orgapachelucene -DartifactId=lucene-queryparser -Dversion=461 -Dpackaging=jar
(不同的jar包相对应替换对应部分)
另外我尝试了下面的方法,发现不行:
直接写一个空的pom,里头包含对所需要jar包的依赖,通过这种方式希望将jar包下载到本地仓库。但是应用代码中没用到,maven命令没有下载这个jar包到本地仓库。
补充,-DgroupId和-DartifactId的作用其实是指定了这个jar包的安装在repository的安装路径,只是用来告诉项目去这个路径下寻找这个名称的jar包。比如:
mvn install:install-file -Dfile=freemarker-2313jar -DgroupId=freemarker -DartifactId=freemarker -Dversion=2313 -Dpackaging=jar
就是安装到了repository\freemarker\freemarker\2313目录下,如果在dependency的依赖里也这么写的话,就可以到对应的目录去寻找。
对于maven中存在classifier的,例如
<dependency>
<groupId>orgapachehadoop</groupId>
<artifactId>hadoop-hdfs</artifactId>
<version>220</version>
<classifier>tests</classifier>
</dependency>
本地jar添加到maven仓库的方法。 有些包在mvn
repository是没有的,例如IKAnlyzerjar,那我们又想让maven帮助我们管理,怎么办呢?
一、安装maven环境,配置环境变量
二、下载你需要加入到maven的jar包
1、配置maven环境,计算机-属性-高级系统设置-环境变量,添加系统变量MAVEN_HOME。值指向bin层,复制到变量值里面。
我下载的是apache-maven-339
2、下载需要加入到maven的包,我这里的例子是IKAnlyzer,因为他在maven仓库里没有。
21、先测试maven环境变量是否安装成功
cmd后输入 mvn -v
22、在cmd中输入
mvn install:install-file
-DgroupId=javaxjms -DartifactId=jms -Dversion=11 -Dfile=E:\IKAnalyzer328jar -Dpackaging=jar
这些参数与pomxml里面的参数对应关系。其实4是本地jar的路径。我把包放在E盘了。
如图:
groupId:DgroupId
artifactId:jms
version:Dversion
那在pomxml 加入:
<span style="white-space:pre;"> </span><dependency>
<span style="white-space:pre;"> </span><groupId>javaxjms</groupId>
<span style="white-space:pre;"> </span><artifactId>jms</artifactId>
<span style="white-space:pre;"> </span><version>11</version>
</dependency>
maven工程中添加jar有两种方式添。第一:
通过Dependencies,可视化界面 *** 作点击Dependencies标签页。点击add按钮 输入我们想添加的jar包名字进行搜索就会出现下图中所示。他会把对应名称的所有版本jar包列出来 选择对应jar包,点击OK按钮确认添加。
第二:通过pomxml源码方式添加,标签<dependency></dependency>
<dependencies>
<dependency>
<groupId>orgspringframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>305RELEASE</version>
</dependency>
</dependencies>原则上Maven的设计是不需要这么做的,因为pomxml中依赖的jar包会自动实现从中央仓库下载到本地仓库。但是公司设计了一个setting,如果本地仓库没有,就去setting指定的url中下载jar包,如果还没有就报错。
考虑到setting中url的jar包比较老,如果需要用最新的,则需要将jar包手动下载到本地仓库。
比如我下载了
lucene-queryparser-461jar
怎么添加到本地仓库呢?
步骤:
1cmd命令进入该jar包所在路径
2执行命令
mvn install:install-file -Dfile=lucene-queryparser-461jar -DgroupId=orgapachelucene -DartifactId=lucene-queryparser -Dversion=461 -Dpackaging=jar
(不同的jar包相对应替换对应部分)
另外我尝试了下面的方法,发现不行:
直接写一个空的pom,里头包含对所需要jar包的依赖,通过这种方式希望将jar包下载到本地仓库。但是应用代码中没用到,maven命令没有下载这个jar包到本地仓库。
补充,-DgroupId和-DartifactId的作用其实是指定了这个jar包的安装在repository的安装路径,只是用来告诉项目去这个路径下寻找这个名称的jar包。比如:
mvn install:install-file -Dfile=freemarker-2313jar -DgroupId=freemarker -DartifactId=freemarker -Dversion=2313 -Dpackaging=jar
就是安装到了repository\freemarker\freemarker\2313目录下,如果在dependency的依赖里也这么写的话,就可以到对应的目录去寻找。
对于maven中存在classifier的,例如
<dependency>
<groupId>orgapachehadoop</groupId>
<artifactId>hadoop-hdfs</artifactId>
<version>220</version>
<classifier>tests</classifier>
</dependency>
就加一个-D参数就可以了,如下:
mvn install:install-file -Dfile=hadoop-hdfs-220-testsjar -DgroupId=orgapachehadoop -DartifactId=hadoop-hdfs -Dversion=220 -Dclassifier=tests -Dpackaging=jar
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)