一、软件安装
1、jdk、maven、tomcat(服务器用于提供局域网maven仓库服务)、nexus-webapp-XXX.war(服务器上管理仓库工具)
二、基本配置
jdk设置JAVA_HOME,在path中添加%JAVA_HOME%\bin;
maven设置MAVEN_HOME,在path中添加%MAVEN_HOME%\bin;
把nexus部署到服务器上,默认用户名和密码为:admin admin123;
三、关联配置
maven的配置文件:$MAVEN_HOME\conf\setttings.xml
1、设置本地仓库存储地址:<localRepository>D:\apache-maven-3.0\myrepo</localRepository>
2、设置不直接远程下载:<offline>true</offline>
3、设置先从局域网下载:
登录服务器用户名密码(注意id与下面相同):
<server>
<id>central</id>
<username>admin</username>
<password>admin123</password>
</server>
设置服务器地址(如果局域网服务器没有所需要的构件,那么才从远程服务器下载):
<profile>
<id>dev</id>
<repositories>
<repository>
<id>central</id>
<name>maven central</name>
<url>http://10.85.164.222:8080/nexus/content/groups/public/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>central</id>
<name>maven central</name>
<url>http://10.85.164.222:8080/nexus/content/groups/public/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</pluginRepository>
</pluginRepositories>
</profile>
激活以dev为id的配置(如果不激活那之前的配置局域网仓库就无效哈):
<activeProfiles>
<activeProfile>dev</activeProfile>
</activeProfiles>
四、创建构建并部署过程:
1、创建项目文件夹pss
2、生成pss-core的jar类型模块(指定生成构建的组标识和构件id):mvn archetype:create -DgroupId=com.pubertersoft.pss.core -DartifactId=pss-core
生成pss-web的war类型模块(特殊一点,需要指定需要的构建工具-DarchetypeArtifactId):mvn archetype:create -DgroupId=com.pubertersoft.pss.web -DartifactId=pss-web -DpackageName=com.pubertersoft.pss.web -DarchetypeArtifactId=maven-archetype-webapp
3、配置POM文件
在项目目录编写pom.xml,需要描述的信息:组id、构件id、版本(后面携带SNAPSHOT的以后部署服务器的就在snapshots中,否则就是releases了)、包类型为pom(其它的有jar,war等等)、项目中所以模块、指定编译构件等等;
模块中的pom.xml需要描述的信息:父构件、组id、构件id、版本(同上)、依赖的模块等等
4、如果想部署到服务器上,那么需要在模块的pom.xml中描述所要部署的路径:
<distributionManagement>
<repository>
<id>nexus-releases</id>
<name>Nexus Release Repotitory</name>
<url>http://10.85.164.222:8080/nexus/content/repositories/releases/</url>
</repository>
<snapshotRepository>
<id>nexus-snapshots</id>
<name>Nexus-snapshots</name>
<url>http://10.85.164.222:8080/nexus/content/repositories/snapshots/</url>
</snapshotRepository>
</distributionManagement>
然后在maven的setttings.xml中描述登录的用户名和密码,通过id关联:
<server>
<id>nexus-releases</id>
<username>admin</username>
<password>admin123</password>
</server>
<server>
<id>nexus-snapshots</id>
<username>admin</username>
<password>admin123</password>
</server>
5、mvn clean install 编译生成如jar文件,同时会把模块添加到本地仓库中(之前指定的D:\apache-maven-3.0\myrepo)
mvn eclipse:eclipse 生成eclipse工程,方便开发代码哈
mvn deploy 部署到局域网仓库中(之前第四步已经提到该如何做),如果版本末尾带SNAPSHOT就会部署到snapshots中,否则就是部署到releases中。