`
maomaode
  • 浏览: 120559 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Maven2如何使用私有Repository

    博客分类:
  • JAVA
阅读更多
<link rel="stylesheet" type="text/css" href="http://maomaode.bokeland.com/plugins/plogeshi/styles/plogeshi.css">早在Celtix, 和之前的CXF里,我们在maven里定义私有的Repository, 因为我们所依赖的Jar, 还没发布到Maven的Repository里,或者,那个项目压根儿就不用maven来构建。
配置其实很简单:
修改pom.xml, 加入下面这个片段,

    <repositories>
        <repository>
            <id>private-repo</id>
            <name>private repo</name>
            <url>file:${basedir}/${topDirectoryLocation}/maven_repo</url>
            <releases>
                <enabled>true</enabled>
            </releases>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </repository>
    </repositories>
 


并定义这个变量:

    <properties>
        <topDirectoryLocation>.</topDirectoryLocation>
     </properties>
 

在maven_repo里就可以存放你得jar, 目录结构应该和.m2/repository一致
如果jar还没有pom, 则需要写一个pom, 例如下面就是一个例子:
<link rel="stylesheet" type="text/css" href="http://maomaode.bokeland.com/plugins/plogeshi/styles/plogeshi.css">

 
<project>
  <modelVersion>4.0.0</modelVersion>
  <groupId>htmlunit</groupId>
  <artifactId>htmlunit-patch</artifactId>
  <version>1.10</version>
  <name>htmlunit patch jar</name>
  <url>http://htmlunit.sf.net</url>
  <distributionManagement>
    <downloadUrl>http://htmlunit.sf.net</downloadUrl>
  </distributionManagement>
  <dependencies>
    <dependency>
      <groupId>htmlunit</groupId>
      <artifactId>htmlunit</artifactId>
      <version>1.10</version>
    </dependency>
  </dependencies>
</project>
 

此外你还需要为jar, 和pom ,做出sha1文件,可以使用工具sha1sum, windows上需要安装cygwin才可以使用这个工具。

Maven 在无法找到这个artifact时候才会去private repository里找, 并安装到.m2目录下。之后就不会从这个目录取了
所以他和运行时classpath没有关系,Maven不会把private repo里的patch jar放在classpath的最前面,maven 本身并不能让我们来改变classpath, 所以如果是你自己的patch jar, 你无法通过这个方法来得到解决,唯一的解决方法就是把你的patch 和原jar合并为一个。或者是用fant来解决您的问题。

分享到:
评论

相关推荐

    maven repository

    2. Maven仓库的层次结构 Maven仓库使用一个基于目录的层次结构来组织构件,这种结构遵循Maven的groupId、artifactId和version的约定。例如,一个名为`com.example:my-project:1.0.0`的项目,其在仓库中的路径为`...

    Maven增加自定义repository

    在默认情况下,Maven使用中央仓库下载所需的jar包。然而,有些时候我们可能需要从自定义的仓库中获取特定的依赖,或者公司内部有自己的私有仓库。本文将详细介绍如何在Maven中增加自定义的repository。 首先,`...

    maven_repository.rar

    2. Maven 仓库的工作原理 当 Maven 构建项目时,它会首先查找本地仓库,如果找不到所需的依赖,就会尝试从远程仓库下载。如果远程仓库也没有,最后才会去中央仓库查找。一旦找到,Maven 会将依赖下载到本地仓库,...

    mavenRepository 仓库 依赖

    默认情况下,Maven使用的是Maven Central Repository,这是全球最大的公开Java库仓库,包含了大量的开源项目组件。然而,由于地理位置和网络条件的限制,有时从Central Repository下载依赖可能会比较慢。为了解决这...

    搭建Maven私有仓库.docx

    概述:本文档详细介绍了在Windows Server 2016环境下使用Nexus搭建Maven私有仓库的详细过程及常用配置,旨在帮助读者快速搭建私有仓库,提高开发效率和项目管理效率。 一、安装准备 在开始搭建私有仓库之前,需要...

    doris-1.1.3源码编译broker-maven依赖包repository

    编译完成后,Maven会在本地的`.m2`目录下生成相应的依赖包,这些包会被存放在`repository`目录下,供后续的构建过程使用。对于Doris这种大型项目,理解并管理好这个`repository`至关重要,因为它直接影响到项目的...

    maven3.3.9+repository.zip

    "maven3.3.9+repository.zip" 提供的可能是 Maven 3.3.9 版本对应的仓库资源,这些资源包括了大量的第三方库,使得开发者无需手动管理依赖。 ** Maven 本地仓库 ** 本地仓库是每个开发者机器上默认的 Maven 存储...

    Maven私有库和本地库的安装与配置.rar

    Maven私有库和本地库是Java开发中重要的组成部分,它们为开发者提供了便捷的依赖管理和构建环境。在大型项目中,由于安全性和定制化需求,通常会使用私有库来存储和管理自定义的JAR包,避免直接引用外部公共库,确保...

    jeesite_maven_repository.rar

    Maven仓库分为本地仓库(Local Repository)和远程仓库(Remote Repository),本地仓库是Maven默认存储依赖的地方,而远程仓库可以是中央Maven仓库(Central Repository)或其他自定义的私有仓库。当本地仓库找不到...

    maven仓库mavenrepository.rar

    Maven仓库中的Struts相关jar包有:struts2-core、struts2-convention、struts2-json-plugin、struts2-dojo-plugin等。 3. **MyBatis框架**: MyBatis是一个优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射...

    repository.zip--------(maven的本地仓库)

    5. **远程仓库**:除了本地仓库外,Maven 还可以访问远程仓库,如 Maven 中央仓库(Central Repository)和公司内部的私有仓库。中央仓库是默认的远程仓库,包含了大量开源项目发布的 jar 包。私有仓库则常用于存放...

    maven_repository.zip

    使用`maven_repository.zip` 将`maven_repository.zip`解压并替换掉原有的`~/.maven/repository`目录,可以快速建立一个本地仓库。这样,你在新项目中引用已存在的依赖时,Maven会直接从这个仓库中查找,避免了因...

    maven使用文档,maven使用文档

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

    Maven2资源和配置下载

    总的来说,Maven2资源和配置下载涉及到了项目构建、依赖管理、MyEclipse的Maven集成以及私有仓库的搭建与使用。了解这些知识点对于提升Java开发效率、优化团队协作流程至关重要。正确配置和使用Maven能够大大简化...

    maven2 使用手册

    默认的中央仓库是`http://www.ibiblio.org/maven2`,但也可以配置为使用私有仓库。 ### Maven 常用命令 1. `mvn -version`: 检查Maven版本。 2. `mvn archetype:create -DgroupId=&lt;group-id&gt; -DartifactId=...

    Java idea maven repository

    描述中提到的“personal repository”可能指的是用户建立的私有Maven仓库。这通常用于存储公司内部或个人项目的独特依赖,以便于版本控制和分发。个人仓库可以通过配置Maven的settings.xml文件来指定,并可以是远程...

    Maven仓库链接下载

    Maven通过使用一个统一的配置方式,简化了项目的构建、依赖管理和文档生成。在本篇文章中,我们将深入探讨Maven仓库以及如何进行链接下载。 一、Maven仓库的结构 Maven仓库分为本地仓库、远程仓库和中央仓库。本地...

    maven2快速入门教程

    2. **中央仓库**:默认使用Maven的中央仓库(https://repo1.maven.org/maven2/)。 3. **私有仓库**:企业可设置自己的仓库,便于管理内部依赖。 ### 八、Maven2的优化 1. **设置仓库镜像**:提高下载速度,通过...

    maven 3.8.4 版本

    Maven 是一个广泛使用的Java项目管理工具,它简化了构建、依赖管理和项目信息管理。这个版本的发布旨在提高性能、稳定性和用户体验。 1. **依赖管理和仓库管理** Maven 通过其中央仓库提供对Java库和框架的便捷...

    maven 配置多仓库

    Maven默认使用中央仓库,但有时我们需要配置多个仓库,例如私有仓库,以提高依赖下载速度或管理内部私有构件。本文将详细介绍如何在Maven中配置多仓库。 ### Maven仓库类型 1. **中央仓库**:Maven官方维护的公共...

Global site tag (gtag.js) - Google Analytics