Maven 手动添加 JAR 包到本地仓库


Maven 确确实实是个好东西,用来管理项目显得很方便,但是如果是通过 Maven 来远程下载 JAR 包的话,我宿舍的带宽是4兆的,
4个人共用,有时候用 Maven 来远程下载 JAR 包会显得很慢,一般我发现下载速度不明显的时候,我就 Ctrl + C 来终止它的下载。
然后改用手动来下载,因为用迅雷一类的工具来下载会快很多。我机子上 Maven 的本地仓库的很多 JAR 包我都是手动下载的。
手动下载的话就会带来一个问题,就是,怎么样手动将下载下来的 JAR 包添加到 Maven 的本地仓库。关于这个,网上也有很多资料。
我说下我的做法。
首先,
推荐几个好的 Maven 常用仓库网址:
http://mvnrepository.com/
http://search.maven.org/
http://repository.sonatype.org/content/groups/public/
http://people.apache.org/repo/m2-snapshot-repository/
http://people.apache.org/repo/m2-incubating-repository/

第一个是我最常用的,然后是第二个,然后是第三个,最后两个是 Apache 的私有仓库,我还没用过,不过感觉应该还可以吧...
接下来,还是一贯的作风,使用截图通俗易懂的方式来解说:

如果你看过我的上一篇: Spring邮件服务之Html:Maven + Spring SMTP Mail With Html 文章,里面需要用到一个
spring-context-support-3.1.0.RELEASE.jar 的 JAR 包,我把它安装到本地仓库的时候把图截了下来,顺便写了这篇文章,
供有需要的网友参考。
首先,到  http://mvnrepository.com/ 这个网,在搜索栏中输入你要搜索的 JAR 包的关键字来搜索,下面直接贴图:

@1图


@2


@3


以 spring-context-support-3.1.0.RELEASE.jar 为例,在 @3图中已经给出这个 jar 包的 groupId,artifactId,version信息,
手动安装的时候这些信息不要改,否则 Maven 项目移植的话,jar 包下载就会失败。顺便把这信息帖下面,方便对照:

< dependency >
    
< groupId > org.springframework </ groupId >
    
< artifactId > spring-context-support </ artifactId >
    
< version > 3.1.0.RELEASE </ version >
</ dependency >

Maven 安装 JAR 包的命令是:

mvn install:install-file -Dfile=jar包的位置 -DgroupId=上面的groupId -DartifactId=上面的artifactId -Dversion=上面的version -Dpackaging=jar

例如:
我下载的这个 jar 包是放到了 D:\mvn 目录下(D:\mvn\spring-context-support-3.1.0.RELEASE.jar)
那么我在 cmd 中敲入的命令就应该是:

mvn install:install-file -Dfile=D:\mvn\spring-context-support-3.1.0.RELEASE.jar -DgroupId=org.springframework -DartifactId=spring-context-support -Dversion=3.1.0.RELEASE -Dpackaging=jar

回车,显示安装成功:




因为 jcaptcha包依赖问题导致

Missing artifact com.octo.captcha:jcaptcha:jar:1.0 pom.xml /babasport line 1 Maven Dependency Problem
ArtifactDescriptorException: Failed to read artifact descriptor for com.jhlabs:imaging:jar:01012005: ArtifactResolutionException: Failure to transfer com.jhlabs:imaging:pom:01012005 from http://forge.octo.com/archiva/repository/3rd-party was cached in the local repository, resolution will not be reattempted until the update interval of 3rd-party has elapsed or updates are forced. Original error: Could not transfer artifact com.jhlabs:imaging:pom:01012005 from/to 3rd-party (http://forge.octo.com/archiva/repository/3rd-party): null to http://forge.octo.com/archiva/repository/3rd-party/com/jhlabs/imaging/01012005/imaging-01012005.pom pom.xml /babasport line 1 Maven Dependency Problem

解决方案

验证码非常常见,那么在spring中使用jcaptcha进行认证那么需要集成

实现:

mvn:

<!-- code check captcha start -->
<dependency>
  <groupId>com.octo.captcha</groupId>
  <artifactId>jcaptcha</artifactId>
  <version>1.0</version>
</dependency>
<!-- code check captcha end -->

一般仓库中没有对应的jar,比如imaging-01012005.jar那么需要手动添加仓库

在pom.xml中添加repository

<repository>
  <id>atlassian</id>
  <name>atlassian</name>
  <url>http://maven.jahia.org/maven2</url>
  <releases>
    <enabled>true</enabled>
  </releases>
  <snapshots>
    <enabled>false</enabled>
  </snapshots>
</repository>



在pom.xml中加入
 <repository>  
            <id>atlassian</id>  
            <name>atlassian</name>  
            <url>http://maven.jahia.org/maven2/</url>  
        </repository>   
可下载原来中央仓库无法下载的包
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值