maven 设置下载地址

本文详细介绍了Maven配置文件settings.xml的内容,包括本地仓库路径、镜像源设置、配置文件的结构解析及其工作原理,还涉及了profile配置的使用场景。
<?xml version="1.0" encoding="UTF-8"?>  
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"  
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
    xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">  

    <!-- 默认的值是${user.home}/.m2/repository -->  
    <localRepository>C:\Users\v_huidongqu\.m2\mybaitsPlusRes</localRepository>  

    <!-- 如果Maven要试图与用户交互来得到输入就设置为true,否则就设置为false,默认为true。 -->  
    <interactiveMode>true</interactiveMode>  

    <!-- 如果Maven使用${user.home}/.m2/plugin-registry.xml来管理plugin的版本,就设置为true,默认为false。 -->  
    <usePluginRegistry>false</usePluginRegistry>  

    <!-- 如果构建系统要在离线模式下工作,设置为true,默认为false。 如果构建服务器因为网络故障或者安全问题不能与远程仓库相连,那么这个设置是非常有用的。 -->  
    <offline>false</offline>  

    <mirrors>  
        <mirror>  
            <id>nexus-aliyun</id>  
            <mirrorOf>central</mirrorOf>  
            <name>Nexus aliyun</name>  
            <url>http://maven.aliyun.com/nexus/content/groups/public/</url>  
        </mirror>  
    </mirrors>  



    <!-- settings.xml中的profile是pom.xml中的profile的简洁形式。 它包含了激活(activation),仓库(repositories),插件仓库(pluginRepositories)和属性(properties)元素。   
        profile元素仅包含这四个元素是因为他们涉及到整个的构建系统,而不是个别的POM配置。 如果settings中的profile被激活,那么它的值将重载POM或者profiles.xml中的任何相等ID的profiles。 -->  
    <profiles>  
        <profile>  
            <id>default</id>  
            <activation>  
                <activeByDefault>true</activeByDefault>  
                <jdk>1.8</jdk>  
            </activation>  
            <repositories>  
                <repository>  
                    <id>spring-milestone</id>  
                    <name>Spring Milestone Repository</name>  
                    <url>http://repo.spring.io/milestone</url>  
                    <releases>  
                        <enabled>true</enabled>  
                    </releases>  
                    <snapshots>  
                        <enabled>false</enabled>  
                    </snapshots>  
                    <layout>default</layout>  
                </repository>  
                <repository>  
                    <id>spring-snapshot</id>  
                    <name>Spring Snapshot Repository</name>  
                    <url>http://repo.spring.io/snapshot</url>  
                    <releases>  
                        <enabled>false</enabled>  
                    </releases>  
                    <snapshots>  
                        <enabled>true</enabled>  
                    </snapshots>  
                    <layout>default</layout>  
                </repository>  
            </repositories>  
        </profile>  
    </profiles>  
    <!-- activations是profile的关键,就像POM中的profiles,profile的能力在于它在特定情况下可以修改一些值。   
        而这些情况是通过activation来指定的。 -->  
    <!-- <activeProfiles/> -->  

</settings>  

转自博客

### 如何在Maven配置自定义下载仓库地址 为了实现自定义Maven仓库的配置,可以通过修改`settings.xml`文件或者项目的`pom.xml`文件来完成。以下是两种主要方法的具体说明: #### 方法一:通过 `settings.xml` 配置全局仓库 Maven 的 `settings.xml` 文件通常位于 `$USER_HOME/.m2/settings.xml` 或者 Maven 安装目录下的 `conf/settings.xml` 中。可以在该文件中添加 `<profiles>` 和 `<repositories>` 节点以指定自定义仓库。 以下是一个典型的配置示例: ```xml <settings> <profiles> <profile> <id>custom-repo</id> <repositories> <repository> <id>my-custom-repository</id> <url>http://your.custom.repository.url/path/to/repo</url> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>false</enabled> </snapshots> </repository> </repositories> </profile> </profiles> <activeProfiles> <activeProfile>custom-repo</activeProfile> </activeProfiles> </settings> ``` 此配置会激活名为 `custom-repo` 的 profile,并将其指向一个特定 URL 的远程仓库[^1]。 #### 方法二:通过项目级别的 `pom.xml` 配置私有仓库 如果仅希望某个项目使用自定义仓库,则可以直接编辑该项目的 `pom.xml` 文件,在其中添加 `<repositories>` 节点。 下面是一段示例代码: ```xml <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.example</groupId> <artifactId>example-project</artifactId> <version>1.0-SNAPSHOT</version> <repositories> <repository> <id>private-repo</id> <url>https://internal.repo.company.com/repository/maven-public/</url> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>false</enabled> </snapshots> </repository> </repositories> </project> ``` 在此配置下,当构建当前项目时,Maven 将优先从指定的私有仓库中解析依赖项[^2]。 #### 注意事项 - 如果同时存在多个仓库声明(例如既存在于 `settings.xml` 又存在于 `pom.xml`),则遵循一定的优先级规则。一般来说,`pom.xml` 中的声明具有更高的优先权。 - 对于某些企业内部环境,可能还需要额外配置认证信息以便访问受保护的仓库资源。可以利用 `<servers>` 节点配合用户名密码等方式解决身份验证问题。 ```xml <servers> <server> <id>my-private-repo</id> <username>johndoe</username> <password>secretPassword</password> </server> </servers> ``` 以上即为如何在 Maven设置自定义下载仓库地址的方法概述。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值