`
froast
  • 浏览: 254208 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

向 Maven2 代理 Maven-proxy 代码库添加中心库没有的 jar 包(转)

阅读更多
有一些第三方库在 Maven2 的中心代码库里没有,但项目组需要,怎么办呢?

假设我们已经安装好了Maven-proxy系统,向Maven-proxy的Local Repository目录里加入相应的文件,

假设我们要添加ibatis-2.3.0.667.jar到 Mavne-proxy里,具体操作如下:

约定ibatis-2.3.0.667.jar 的 groupId = com.ibatis,artifactId = ibatis,version = 2.3.0.667
假设 Maven-proxy 的 LocalRepository路径为:/var/maven-proxy/target/repo

(1) 复制 jar 包到 Maven-proxy 的本地代码库

python 代码
  1. $ cd /var/maven-proxy/target/repo   
  2.   
  3. $ mkdir com   
  4. $ mkdir com/ibatis   
  5. $ mkdir com/ibatis/ibatis   
  6. $ mkdir com/ibatis/ibatis/2.3.0.667   
  7.   
  8. $ cp ibatis-2.3.0.667.jar /var/maven-proxy/target/repo/com/ibatis/ibatis/2.3.0.667  

(2) 编写 pom 文件:

$ vi ibatis-2.3.0.667.pom

文件内容如下:
xml 代码
  1. <project>     
  2.     <modelVersion>4.0.0modelVersion>     
  3.     <groupId>com.ibatisgroupId>     
  4.     <artifactId>ibatisartifactId>     
  5.     <version>2.3.0.667version>  
  6. <project>  

如果有依赖关系,可以将依赖关系描述在 pom 文件里。

(3) 制作 checksum 文件:

需要用Ant 来生成 jar 包和 pom 文件的 checksum 文件,建立build.xml,如下:
xml 代码
  1. <project default="checksum">  
  2.   <target name="checksum">  
  3.     <checksum file="ibatis-2.3.0.667.jar" algorithm="SHA" fileext=".sha1"/>  
  4.     <checksum file="ibatis-2.3.0.667.pom" algorithm="SHA" fileext=".sha1"/>  
  5.   <target>  
  6. <project>  

执行这个 Ant 任务

$ ant build.xml

会生成 ibatis-2.3.0.667.jar.sha1 和 ibatis-2.3.0.667.pom.sha1 文件,在项目的 pom.xml文件里就可以添加这个库了,添加如下 dependency:

xml 代码
  1. <dependency>  
  2.   <groupId>com.ibatisgroupId>  
  3.   <artifactId>ibatisartifactId>  
  4.   <version>2.3.0.667version>  
  5. <dependency>  

这样,mvn 会从 Maven-proxy那里下载这个库了。
分享到:
评论

相关推荐

    新建maven项目失败需要的jar包,maven-archetype-quickstart-1.1.jar

    1. 将`maven-archetype-quickstart-1.1.jar`文件放置在你的Maven本地仓库中,路径通常是`~/.m2/repository/org/apache/maven/archetypes/maven-archetype-quickstart/1.1/`(Windows系统下的用户路径可能会略有不同...

    smileys-proxy-servlet:使用Smiley的库(https

    使用这个库,开发者可以自定义代理的逻辑,比如添加身份验证、限速、日志记录、缓存策略等。同时,由于它是基于Servlet的,所以可以无缝地部署到任何支持Servlet的Web服务器上,如Tomcat、Jetty等。 总结来说,...

    axis2客户端生成java代码的jar包以及依赖jar包

    将生成的Java代码和依赖jar包添加到你的Java项目中,确保在类路径(classpath)中包含所有必要的库。如果你使用Maven或Gradle等构建工具,可以在pom.xml或build.gradle文件中声明这些依赖。 五、运行客户端 现在,...

    使用Maven&nexus上传下载至私库

    ### 使用Maven与Nexus上传下载至私库 在企业级软件开发中,为了提高团队协作效率、确保依赖管理的安全性以及减少对外部网络的依赖,通常会搭建一个私有的Maven仓库。本文将详细介绍如何使用Nexus作为私有仓库,并...

    maven 私服搭建工具3.30.zip

    Maven 私服,全称为 Nexus Repository Manager,是一款由 Sonatype 公司开发的强大且功能丰富的 Maven 仓库管理工具。Nexus 不仅可以作为一个代理仓库,帮助开发团队更有效地访问远程 Maven 仓库,还可以作为内部...

    手动安装Maven的仓库(完整版分卷二)

    Maven仓库是存储各种软件组件(如JAR文件)的地方,这些组件是开发过程中必不可少的依赖。Maven通过仓库来下载并管理这些依赖,使得开发人员无需手动下载和管理每个库。默认情况下,Maven会连接到中央Maven仓库,但...

    maven2完全使用手册

    - Maven代理服务器,如maven-proxy,用于代理repository,使用本地库替代远程库。 - Continuum,一个持续集成工具,支持ant和maven自动构建。 - 版本控制系统如SVN。 - Maven Eclipse插件或IntelliJ IDEA插件,方便...

    java源码:高性能web代理程序 hyk-proxy.rar

    【标题】"java源码:高性能web代理程序 hyk-proxy.rar"揭示了这是一个基于Java编写的Web代理服务器项目。Web代理程序的主要作用是作为一个中介,允许客户端通过它访问互联网上的资源,同时提供缓存、匿名浏览、负载...

    Java8/java1.8的tools.jar

    4. **手动添加依赖**:如果特定的应用或框架明确要求`tools.jar`,可以通过将`tools.jar`添加到项目的类路径中来解决,但这不是推荐的做法,因为这可能导致与其他库的冲突。 总之,`tools.jar`是Java 8开发和运行...

    netty-websocket-proxy-1.3.0.zip

    在“netty-websocket-proxy-1.3.0.zip”这个压缩包中,我们可以推测它包含了Netty实现的一个WebSocket代理服务器的相关代码和资源。 1. **WebSocket协议**:WebSocket是一种在客户端和服务器之间建立长连接的协议,...

    maven使用文档,maven使用文档

    2. **Maven 代理仓库 (Repository)** - Maven 通过代理仓库来加速下载依赖的速度。可以使用 [Maven Proxy](http://maven-proxy.codehaus.org/) 来搭建私有仓库。 - 配置 settings.xml 文件中的 mirrors 节点来...

    jetty所需jar包

    11. **jetty-proxy.jar**:如果你需要使用Jetty作为反向代理或负载均衡器,这个jar包包含了相关实现。 12. **jetty-client.jar**:如果你的应用需要作为HTTP客户端发送请求,这个jar包提供了客户端API。 13. **...

    cxf-2.7.18. jar及其依赖包

    在使用CXF时,开发者可以创建服务端点(Endpoint)来暴露服务,同时也可以创建客户端代理(Proxy)来调用远程服务。CXF支持动态客户端,这意味着无需预先知道服务的WSDL(Web Service Description Language),就...

    解决Android Studio Gradle Metadata特别慢的问题

    2. 添加 Maven 库的依赖关系:在 build.gradle 文件中添加以下代码: ```groovy repositories { maven { url 'http://maven.aliyun.com/nexus/content/groups/public/' } } ``` 结论 ---- 在这篇文章中,我们...

    linux搭建maven私库所需的安装包.zip

    在Linux环境中搭建Maven私库是一项重要的任务,它可以帮助企业或团队管理内部依赖,提高开发效率,保持代码的一致性和可维护性。本教程将详细解释如何利用给定的安装包在Linux上创建一个Maven私有仓库。 首先,我们...

    Cglib3.3.0最新版jar包

    Cglib是一个强大的、高性能的代码生成库,它在Java世界中被广泛应用,尤其是在动态代理和AOP(面向切面编程)领域。Cglib3.3.0是该库的最新版本,提供了两个jar包:`cglib-3.3.0.jar`和`cglib-nodep-3.3.0.jar`。 1...

    apache-maven-3.0.3.rar

    3. **插件系统**:Maven 的强大之处在于其丰富的插件系统,几乎可以处理任何构建相关的任务,例如生成Javadoc、执行单元测试、创建源代码jar等。 4. **项目对象模型**(POM):POM是Maven的核心,它定义了项目的元...

    nexus-2.7.0-bundle-maven仓库搭建.rar

    【标题】"nexus-2.7.0-bundle-maven仓库搭建.rar" 提供的是一个用于构建Maven仓库的工具包,Nexus是Sonatype公司出品的一款强大的 Maven 库管理器,它允许开发者集中管理和分发Java组件,包括JARs、源代码、文档、...

Global site tag (gtag.js) - Google Analytics