maven学习之pom.xml或settings.xml对nexus的配置(转)

(1)在POM中配置Nexus仓库

<project>
         ...
         <repositories>
            <repository>
                 <id>nexus</id>
                 <name>Nexus</name>
                <url>http://localhost:8081/nexus/content/groups/public/<url>
                 <release><enabled>true</enabled></release>
                 <snapshots><enabled>true></enabled></snapshots>
             </repository>
        </repositories>
        <pluginRepositories>
             <pluginRepository>
                 <id>nexus</id>
                 <name>Nexus</name>
                <url>http://localhost:8081/nexus/content/groups/public/<url>
                 <release><enabled>true</enabled></release>
                 <snapshots><enabled>true></enabled></snapshots>
              </pluginRepository>
         </pluginRepositories>
         ...
    </project>

上述配置只对当前项目有效,若需让本机所有Maven项目均使用Mavne私服,应该在setting.xml中进行配置。

(2)在setting.xml中配置Nexus仓库

<settings>
          ...
          <profiles>
                <profile>
                    <id>nexus</id>
                    <repositories>
                        <repository>
                          <id>nexus</id>
                          <name>Nexus</name>
                         <url>http://localhost:8081/nexus/content/groups/public/<url>
                          <release><enabled>true</enabled></release>
                          <snapshots><enabled>true></enabled></snapshots>
                        </repository>
                     </repositories>
                     <pluginRepositories>
                        <pluginRepository>
                            <id>nexus</id>
                            <name>Nexus</name>
                          <url>http://localhost:8081/nexus/content/groups/public/<url>
                            <release><enabled>true</enabled></release>
                            <snapshots><enabled>true></enabled></snapshots>
                       </pluginRepository>
                     </pluginRepositories>
                </profile>
           </profiles>
           <activeProfiles>
               <activeProfile>nexus</activeProfiles>
           </activaProfiles>

</settings>

activeProfiles用来激活。

(3) 配置镜像让Maven只使用私服

<settings>
          ...
          <mirrors>
              <mirror>
                  <id>nexus</id>
                  <mirrorOf>*<?mirrorOf>
                 <url>http://localhost:8081/nexus/content/groups/public/</url>
              </mirror>
          </mirrors>
          <profiles>
                <profile>
                    <id>nexus</id>
                    <repositories>
                        <repository>
                          <id>central</id>
                          <name>http://central</name>                       
                          <release><enabled>true</enabled></release>
                          <snapshots><enabled>true></enabled></snapshots>
                        </repository>
                     </repositories>
                     <pluginRepositories>
                        <pluginRepository>
                            <id>central</id>
                            <name>http://central</name>                          
                            <release><enabled>true</enabled></release>
                            <snapshots><enabled>true></enabled></snapshots>
                       </pluginRepository>
                     </pluginRepositories>
                </profile>
           </profiles>
           <activeProfiles>
               <activeProfile>nexus</activeProfiles>
           </activaProfiles>
            ...
    </settings>

只要mirrorOf中的工厂需要下载jar,都会自动来找该镜像。如果镜像地址有,就下载下来。若镜像地址没有,mirrorOf中的工厂也不会到中央资源库下载,而是由镜像去下载。这是推荐做法。若镜像下载不到,就下载失败。

时间: 2024-10-08 10:01:30

maven学习之pom.xml或settings.xml对nexus的配置(转)的相关文章

Maven实战:pom.xml与settings.xml

pom.xml与settings.xml pom.xml与setting.xml,可以说是Maven中最重要的两个配置文件,决定了Maven的核心功能,虽然之前的文章零零碎碎有提到过pom.xml和settings.xml里面的内容,但都是大略带过,学习与研究地并不细致,本文的目的就是详细研究下这两个Maven重要的配置文件,从这两个配置文件可以牵出非常多的Maven话题. Maven坐标 首先谈一下为什么要使用Maven坐标. Maven世界拥有数量非常巨大的构件,也就是平时使用的一些jar.

53-解决Maven提示:Could not read settings.xml, assuming default values

参考:https://blog.csdn.net/hqocshheqing/article/details/47702049 最近在学习Maven  时总是出现 Could not read settings.xml, assuming default values  错误,使得用户配置无法生效,在网上找了很多资料仍然解决不了,后来通过自己摸索找到了一下原因: 1:在  settings  配置文件中一定不能有中文,包括注释  <!--   -->  内部也不能有. 2:路径一定要写对:比如说

Maven学习-编译遇到‘src/checkstyle/checkstyle-suppressions.xml‘

一.问题描述 搭建Spring boot项目,编译时报错 从报错上看不出具体问题出在哪里,然后上午那个搜索下,发现问题在于pom.xml使用了错误的parent. 以上报错引用的parent是 <groupId>org.springframework.boot</groupId><artifactId>spring-boot-parent</artifactId> 二.解决问题将parent改为 <groupId>org.springframew

maven学习7 settings.xml解析

maven的配置文件settings.xml存在于两个地方: 1.安装的地方:${M2_HOME}/conf/settings.xml 2.用户的目录:${user.home}/.m2/settings.xml 前者又被叫做全局配置,对操作系统的所有使用者生效:后者被称为用户配置,只对当前操作系统的使用者生效.如果两者都存在,它们的内容将被合并,并且用户范围的settings.xml会覆盖全局的settings.xml. Maven安装后,用户目录下不会自动生成settings.xml,只有全局

默认的Settings.xml文件(无修改过)-Maven

此为maven首次安装后的默认Settings.xml文件. 当什么都不作修改时,默认是从Maven中央仓库进行下载,http://repo1.maven.org/maven2/ <?xml version="1.0" encoding="UTF-8"?> <!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor license agree

Maven命令行窗口指定settings.xml

maven命令行窗口指定特定settings.xml 在命令行界面指定settings.xml,命令如下: mvn install --settings c:\user\settings.xml 例如: mvn clean package --settings F:\Maven\settings.xml -Dmaven.test.skip=true 参考资料: http://stackoverflow.com/questions/1261215/maven-command-to-determin

一次解决idea maven settings.xml文件不生效

一直使用eclipse,在eclipse中可以手动指定global和user settings,并且settings的文件名称可以不是settings.xml,只要内容符合maven规范就行.如下: 然而今天遇到个问题的背景是:我有个jar包需要发布到中央库,而在eclipse中需要切换settings配置,稍显麻烦,我就把需要传到中央库的这个应用导入到idea里面来,使用idea上传,配置了idea的maven路径,settings(我上传到中央库的名字是settings-org.xml)之后

maven 学习---使用“mvn site-deploy”部署站点

这里有一个指南,向您展示如何使用“mvn site:deploy”来自动部署生成的文档站点到服务器,这里通过WebDAV机制说明. P.S 在这篇文章中,我们使用的是Apache服务器2.x的WebDAV功能. 1. 启用 WebDAV 请参见本指南,了解 如何启用WebDAV访问Apache 2.x服务器. 2. 配置在何处部署 在 pom.xml 中,配置在 “distributionManagement” 标签部署你的网站. <distributionManagement> <si

Maven学习入门——2016-2-17

一.Maven的基本概念 1.1Mawen是干啥的??? 我们第一次接触Maven一般就是用Maven为我们的项目加入jar包,非常的方便. maven到底是干什么的??说白了,maven就是用来管理项目的,就这么简单,管理项目的. 一个项目在开发之前我们需要做好准备工作,包括我们需要的jar包之类的,maven就有一个仓库,要用那些jar包直接拿来用,不用去跑着跑那去下载,verry  good!!!我们把项目开发好之后要对项目进行打包,直接用maven搞定. 这就是一个方便我们管理项目的好工