有一些第三方库在 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 代码
- $ cd /var/maven-proxy/target/repo
-
- $ mkdir com
- $ mkdir com/ibatis
- $ mkdir com/ibatis/ibatis
- $ mkdir com/ibatis/ibatis/2.3.0.667
-
- $ 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 代码
- <project>
- <modelVersion>4.0.0modelVersion>
- <groupId>com.ibatisgroupId>
- <artifactId>ibatisartifactId>
- <version>2.3.0.667version>
- <project>
如果有依赖关系,可以将依赖关系描述在 pom 文件里。
(3) 制作 checksum 文件:
需要用Ant 来生成 jar 包和 pom 文件的 checksum 文件,建立build.xml,如下:
xml 代码
- <project default="checksum">
- <target name="checksum">
- <checksum file="ibatis-2.3.0.667.jar" algorithm="SHA" fileext=".sha1"/>
- <checksum file="ibatis-2.3.0.667.pom" algorithm="SHA" fileext=".sha1"/>
- <target>
- <project>
执行这个 Ant 任务
$ ant build.xml
会生成 ibatis-2.3.0.667.jar.sha1 和 ibatis-2.3.0.667.pom.sha1 文件,在项目的 pom.xml文件里就可以添加这个库了,添加如下 dependency:
xml 代码
- <dependency>
- <groupId>com.ibatisgroupId>
- <artifactId>ibatisartifactId>
- <version>2.3.0.667version>
- <dependency>
这样,mvn 会从 Maven-proxy那里下载这个库了。
分享到:
相关推荐
1. 将`maven-archetype-quickstart-1.1.jar`文件放置在你的Maven本地仓库中,路径通常是`~/.m2/repository/org/apache/maven/archetypes/maven-archetype-quickstart/1.1/`(Windows系统下的用户路径可能会略有不同...
使用这个库,开发者可以自定义代理的逻辑,比如添加身份验证、限速、日志记录、缓存策略等。同时,由于它是基于Servlet的,所以可以无缝地部署到任何支持Servlet的Web服务器上,如Tomcat、Jetty等。 总结来说,...
将生成的Java代码和依赖jar包添加到你的Java项目中,确保在类路径(classpath)中包含所有必要的库。如果你使用Maven或Gradle等构建工具,可以在pom.xml或build.gradle文件中声明这些依赖。 五、运行客户端 现在,...
### 使用Maven与Nexus上传下载至私库 在企业级软件开发中,为了提高团队协作效率、确保依赖管理的安全性以及减少对外部网络的依赖,通常会搭建一个私有的Maven仓库。本文将详细介绍如何使用Nexus作为私有仓库,并...
Maven 私服,全称为 Nexus Repository Manager,是一款由 Sonatype 公司开发的强大且功能丰富的 Maven 仓库管理工具。Nexus 不仅可以作为一个代理仓库,帮助开发团队更有效地访问远程 Maven 仓库,还可以作为内部...
Maven仓库是存储各种软件组件(如JAR文件)的地方,这些组件是开发过程中必不可少的依赖。Maven通过仓库来下载并管理这些依赖,使得开发人员无需手动下载和管理每个库。默认情况下,Maven会连接到中央Maven仓库,但...
- Maven代理服务器,如maven-proxy,用于代理repository,使用本地库替代远程库。 - Continuum,一个持续集成工具,支持ant和maven自动构建。 - 版本控制系统如SVN。 - Maven Eclipse插件或IntelliJ IDEA插件,方便...
【标题】"java源码:高性能web代理程序 hyk-proxy.rar"揭示了这是一个基于Java编写的Web代理服务器项目。Web代理程序的主要作用是作为一个中介,允许客户端通过它访问互联网上的资源,同时提供缓存、匿名浏览、负载...
4. **手动添加依赖**:如果特定的应用或框架明确要求`tools.jar`,可以通过将`tools.jar`添加到项目的类路径中来解决,但这不是推荐的做法,因为这可能导致与其他库的冲突。 总之,`tools.jar`是Java 8开发和运行...
在“netty-websocket-proxy-1.3.0.zip”这个压缩包中,我们可以推测它包含了Netty实现的一个WebSocket代理服务器的相关代码和资源。 1. **WebSocket协议**:WebSocket是一种在客户端和服务器之间建立长连接的协议,...
2. **Maven 代理仓库 (Repository)** - Maven 通过代理仓库来加速下载依赖的速度。可以使用 [Maven Proxy](http://maven-proxy.codehaus.org/) 来搭建私有仓库。 - 配置 settings.xml 文件中的 mirrors 节点来...
11. **jetty-proxy.jar**:如果你需要使用Jetty作为反向代理或负载均衡器,这个jar包包含了相关实现。 12. **jetty-client.jar**:如果你的应用需要作为HTTP客户端发送请求,这个jar包提供了客户端API。 13. **...
在使用CXF时,开发者可以创建服务端点(Endpoint)来暴露服务,同时也可以创建客户端代理(Proxy)来调用远程服务。CXF支持动态客户端,这意味着无需预先知道服务的WSDL(Web Service Description Language),就...
2. 添加 Maven 库的依赖关系:在 build.gradle 文件中添加以下代码: ```groovy repositories { maven { url 'http://maven.aliyun.com/nexus/content/groups/public/' } } ``` 结论 ---- 在这篇文章中,我们...
在Linux环境中搭建Maven私库是一项重要的任务,它可以帮助企业或团队管理内部依赖,提高开发效率,保持代码的一致性和可维护性。本教程将详细解释如何利用给定的安装包在Linux上创建一个Maven私有仓库。 首先,我们...
Cglib是一个强大的、高性能的代码生成库,它在Java世界中被广泛应用,尤其是在动态代理和AOP(面向切面编程)领域。Cglib3.3.0是该库的最新版本,提供了两个jar包:`cglib-3.3.0.jar`和`cglib-nodep-3.3.0.jar`。 1...
3. **插件系统**:Maven 的强大之处在于其丰富的插件系统,几乎可以处理任何构建相关的任务,例如生成Javadoc、执行单元测试、创建源代码jar等。 4. **项目对象模型**(POM):POM是Maven的核心,它定义了项目的元...
【标题】"nexus-2.7.0-bundle-maven仓库搭建.rar" 提供的是一个用于构建Maven仓库的工具包,Nexus是Sonatype公司出品的一款强大的 Maven 库管理器,它允许开发者集中管理和分发Java组件,包括JARs、源代码、文档、...