环境: eclipse 、maven、nexus。
1、配置setting.xml文件
1.1、配置本地仓库位置:文件中,存在节点 “localRepository”,默认是注释,也就是本地仓库使用默认地址“Default: ~/.m2/repository”,一般为系统C盘"C:UsersAdministratorm2",修改本地仓库位置,<localRepository>你想设置的任意目录</localRepository>
1.2、配置远程服务器连接认证信息,即节点 “server”,一般配置:
<server> <!-- 此处id设置,与pom中distributionManagement中repository元素的id相匹配 --> <id>releases</id>
<!--认证用户名 --> <username>admin</username>
<!--认证密码--> <password>admin123</password> </server> <server> <id>snapshots</id> <username>admin</username> <password>admin123</password> </server>
1.3、profile环境配置,此配置可以配置多种信息,如repositories、pluginRepositories、properties等,并可以选择激活的配置信息。
<profile> <id>jdk-1.7</id> <activation> <activeByDefault>true</activeByDefault> <jdk>1.7</jdk> </activation> <properties>
<maven.compiler.source>1.7</maven.compiler.source>
<maven.compiler.target>1.7</maven.compiler.target>
<maven.compiler.compilerVersion>1.7</maven.compiler.compilerVersion>
</properties>
</profile>
<profile>
<id>repo</id>
<activation>
<activeByDefault>false</activeByDefault>
<jdk>1.7</jdk>
</activation>
<repositories>
<!--私有库配置-->
<repository>
<!--私有库id -->
<id>nexus</id>
<!--私有库地址-->
<url>http://ip:port/nexus/content/groups/public /</url>
<!--私有库是否支持releases版本-->
<releases>
<enabled>true</enabled>
</releases>
<!--私有库是否支持snapshots版本-->
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
<pluginRepositories>
<!--插件库配置,具体含义私有库配置-->
<pluginRepository>
<id>nexus</id>
<url>http://ip:port/nexus/content/groups/public /</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</pluginRepository>
</pluginRepositories>
</profile>
<!--激活profile -->
<activeProfiles>
<!--根据profile的id标签值激活指定的内容-->
<activeProfile>repo</activeProfile>
</activeProfiles>
1.4、项目中pom文件配置
<distributionManagement> <repository> <id>releases</id> <name>Internal Releases</name> <url>http://ip:port/nexus/content/repositories/releases</url> </repository> <snapshotRepository> <id>snapshots</id> <name>Internal Snapshots</name> <url>http://ip:port/nexus/content/repositories/snapshots</url> </snapshotRepository> </distributionManagement>
至此,基本配置完成,在后续的项目deploy过程中,如果项目pom中,version标识类似 “0.0.1-SNAPSHOT”则会部署到私服的snapshots快照版本库,而不带“SNAPSHOT”标识的,则会发布到releases正式库中。
问题:nexus同版本多次deploy到私服的话,默认是 “Disable Redeploy”-不允许重复,此时需要修改为 “Allow Redeploy”,如图
ps:maven插件配置(未完待续。。。)