# Nexus搭建maven私服，各种教程很乱？

02/03 17:39

，这里使用默认maven-releases；

<?xml version="1.0" encoding="UTF-8"?>

<!--| This is the configuration file for Maven. It can be specified at two levels:|| 1. User Level. This settings.xml file provides configuration for a single| user, and is normally provided in| ${user.home}/.m2/settings.xml.|| NOTE: This location can be overridden with the CLI option:|| -s /path/to/user/settings.xml|| 2. Global Level. This settings.xml file provides configuration for all| Maven users on a machine (assuming they're all using the| same Maven installation). It's normally provided in|${maven.home}/conf/settings.xml.|| NOTE: This location can be overridden with the CLI option:|| -gs /path/to/global/settings.xml|| The sections in this sample file are intended to give you a running start| at getting the most out of your Maven installation. Where appropriate, the| default values (values used when the setting is not specified) are provided.||-->

-<settings xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://maven.apache.org/SETTINGS/1.0.0">

<!-- localRepository| The path to the local repository maven will use to store artifacts.|| Default: ~/.m2/repository<localRepository>/path/to/local/repo</localRepository> -->

<localRepository>E:\Maven\repository</localRepository>

<!-- interactiveMode| This will determine whether maven prompts you when it needs input. If set| to false, maven will use a sensible default value, perhaps based on some| other setting, for the parameter in question.|| Default: true<interactiveMode>true</interactiveMode> -->

<!-- offline| Determines whether maven should attempt to connect to the network when| executing a build. This will have an effect on artifact downloads,| artifact deployment, and others.|| Default: false<offline>false</offline> -->

<!-- pluginGroups| This is a list of additional group identifiers that will be searched when| resolving plugins by their prefix, i.e. when invoking a command line like| "mvn prefix:goal". Maven will automatically add the group identifiers| "org.apache.maven.plugins" and "org.codehaus.mojo" if these are not| already contained in the list.|-->

-<pluginGroups>

<!-- pluginGroup| Specifies a further group identifier to use for plugin lookup.<pluginGroup>com.your.plugins</pluginGroup> -->

</pluginGroups>

<!-- proxies| This is a list of proxies which can be used on this machine to connect to| the network. Unless otherwise specified (by system property or command- | line switch), the first proxy specification in this list marked as active| will be used.|-->

-<proxies>

<!-- proxy| Specification for one proxy, to be used in connecting to the network.|<proxy><id>optional</id><active>true</active><protocol>http</protocol><username>proxyuser</username><password>proxypass</password><host>proxy.host.net</host><port>80</port><nonProxyHosts>local.net|some.host.com</nonProxyHosts></proxy> -->

</proxies>

<!-- servers| This is a list of authentication profiles, keyed by the server-id used| within the system. Authentication profiles can be used whenever maven must| make a connection to a remote server.|-->

-<servers>

-<server>

<id>releases</id>

</server>

-<server>

<id>snapshots</id>

</server>

</servers>

<!-- mirrors| This is a list of mirrors to be used in downloading artifacts from remote| repositories.|| It works like this: a POM may declare a repository to use in resolving| certain artifacts. However, this repository may have problems with heavy| traffic at times, so people have mirrored it to several places.|| That repository definition will have a unique id, so we can create a| mirror reference for that repository, to be used as an alternate download| site. The mirror site will be the preferred server for that repository.|-->

-<mirrors>

<!-- mirror| Specifies a repository mirror site to use instead of a given repository.| The repository that this mirror serves has an ID that matches the| mirrorOf element of this mirror. IDs are used for inheritance and direct| lookup purposes, and must be unique across the set of mirrors.|<mirror><id>mirrorId</id><mirrorOf>repositoryId</mirrorOf><name>Human Readable Name for this Mirror.</name><url>http://my.repository.com/repo/path</url></mirror> -->

-<mirror>

<id>nexus-aliyun</id>

<mirrorOf>central</mirrorOf>

<name>Nexus aliyun</name>

<url>http://maven.aliyun.com/nexus/content/groups/public</url>

</mirror>

</mirrors>

<!-- profiles| This is a list of profiles which can be activated in a variety of ways,| and which can modify the build process. Profiles provided in the| settings.xml are intended to provide local machine-specific paths and| repository locations which allow the build to work in the local| environment.|| For example, if you have an integration testing plugin - like cactus - | that needs to know where your Tomcat instance is installed, you can| provide a variable here such that the variable is dereferenced during the| build process to configure the cactus plugin.|| As noted above, profiles can be activated in a variety of ways. One| way - the activeProfiles section of this document (settings.xml) - will be| discussed later. Another way essentially relies on the detection of a| system property, either matching a particular value for the property, or| merely testing its existence. Profiles can also be activated by JDK| version prefix, where a value of '1.4' might activate a profile when the| build is executed on a JDK version of '1.4.2_07'. Finally, the list of| active profiles can be specified directly from the command line.|| NOTE: For profiles defined in the settings.xml, you are restricted to| specifying only artifact repositories, plugin repositories, and| free-form properties to be used as configuration variables for| plugins in the POM.||-->

-<profiles>

<!-- profile| Specifies a set of introductions to the build process, to be activated| using one or more of the mechanisms described above. For inheritance| purposes, and to activate profiles via <activatedProfiles/> or the| command line, profiles have to have an ID that is unique.|| An encouraged best practice for profile identification is to use a| consistent naming convention for profiles, such as 'env-dev',| 'env-test', 'env-production', 'user-jdcasey', 'user-brett', etc. This| will make it more intuitive to understand what the set of introduced| profiles is attempting to accomplish, particularly when you only have a| list of profile id's for debug.|| This profile example uses the JDK version to trigger activation, and| provides a JDK-specific repo.<profile><id>jdk-1.4</id><activation><jdk>1.4</jdk></activation><repositories><repository><id>jdk14</id><name>Repository for JDK 1.4 builds</name><url>http://www.myhost.com/maven/jdk14</url><layout>default</layout><snapshotPolicy>always</snapshotPolicy></repository></repositories></profile> -->

<!--| Here is another profile, activated by the system property 'target-env'| with a value of 'dev', which provides a specific path to the Tomcat| instance. To use this, your plugin configuration might hypothetically| look like:|| ...| <plugin>| <groupId>org.myco.myplugins</groupId>| <artifactId>myplugin</artifactId>|| <configuration>| <tomcatLocation>\${tomcatPath}</tomcatLocation>| </configuration>| </plugin>| ...|| NOTE: If you just wanted to inject this configuration whenever someone| set 'target-env' to anything, you could just leave off the| <value/> inside the activation-property.|<profile><id>env-dev</id><activation><property><name>target-env</name><value>dev</value></property></activation><properties><tomcatPath>/path/to/tomcat/instance</tomcatPath></properties></profile> -->

-<profile>

<id>jdk-1.8</id>

-<activation>

<activeByDefault>true</activeByDefault>

<jdk>1.8</jdk>

</activation>

-<properties>

<maven.compiler.source>1.8</maven.compiler.source>

<maven.compiler.target>1.8</maven.compiler.target>

<maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>

</properties>

</profile>

</profiles>

<!-- activeProfiles| List of profiles that are active for all builds.|<activeProfiles><activeProfile>alwaysActiveProfile</activeProfile><activeProfile>anotherAlwaysActiveProfile</activeProfile></activeProfiles> -->

</settings>

<distributionManagement>
<repository>
<id>releases</id>
<url>http://2c356758w9.51mypc.cn/repository/maven-releases/</url>
</repository>
<snapshotRepository>
<id>snapshots</id>
<url>http://2c356758w9.51mypc.cn/repository/maven-snapshots/</url>
</snapshotRepository>
</distributionManagement>

http://2c356758w9.51mypc.cn是代理的本地地址，我选择的花生壳

<repositories>
<repository>
<id>nexus</id>
<url>http://2c356758w9.51mypc.cn/nexus/content/groups/public/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>

ok，至此就是私服maven项目的上传和下载了

0
0 收藏

0 评论
0 收藏
0