Linux 安装配置maven3.0 以及搭建nexus私服
http://carvin.iteye.com/blog/785365
一、软件准备
1、apache-maven-3.0-bin.tar.gz 下载地址:http://www.apache.org/dyn/closer.cgi/maven/binaries/apache-maven-3.0-bin.tar.gz
2、nexus-oss-webapp-1.8.0-bundle.tar.gz 下载地址:http://nexus.sonatype.org/downloads/
二、maven安装配置
1、创建需要操作maven的用户组以及用户(如果用root用户安装不用创建)
- #groupadd configer //创建用户组
- #useradd -g configer configer //创建用户并指定用户组
- #passwd configer //为用户分配密码
2、创建解压目录,并将apache-maven-3.0-bin.tar.gz文件解压到指定目录
- #cd /opt
- #mkdir maven
- #chown -R configer:configer /opt/maven
- #chmod 755 /opt/maven
- #su -l configer
- #tar -zvxf apache-maven-3.0-bin.tar.gz
2、配置环境变量
- #vi /home/configer/.bash_profile
在文件中添加如下行:
- M2_HOME=/opt/maven/apache-maven-3.0
- export M2_HOME
- PATH=$PATH:$M2_HOME/bin
- export PATH
3、查看版本
- #cd /opt/maven/apache-maven-3.0/bin
- #mvn --version
如果显示版本信息,应该会在${user}目录下创建.m2目录
4、查看.m2目录
- #cd /home/configer/.m2
- 如果没有.m2目录,则可以手动添加一个
- #mkdir .m2
5、如果需要把maven的repository目录指定到其他目录,则修改maven安装目录下conf中的配置文件settings.xml文件
- #vi /opt/maven/apache-maven-3.0/conf/settings.xml
- 将文件中<localRepository>....</localRepository>的注释打开
- 或者在文件中增加 在这个注释下增加
- <localRepository>your repository path</localRepository>
二、搭建nexus私服
1、解压nexus-oss-webapp-1.8.0-bundle.tar.gz文件到指定目录
- #tar -zvxf nexus-oss-webapp-1.8.0-bundle.tar.gz
2、启动nexus
- #cd /opt/maven/nexus-oss-webapp-1.8.0/bin/jsw
- 选择自己机器的版本:
- #cd linux-x86-32/
- #./nexus start
- 重启:
- #./nexus restart
- 停止:
- #./nexus stop
3、运行nexus
在浏览器中输入:http://localhost:8081/nexus
就可以看到nexus 的主页,点击右上角Log in
默认用户名和密码是:admin/admin123
运行后会自动生成一个nexus工作目录sonatype-work,nexus下载的jar包会存放在
sonatype-work/nexus/storage中
4、配置
1)点击左侧菜单Repositories
分别将右侧列表中
- Apache Snapshots
- Codehaus Snapshots
- Maven Central
三个repository 的Download Remote Index 配置改为True,并保存设置,
然后在列表中分别右键点击三个Repository,点击ReIndex
2)增加新的Repository,有一些比较常用jar包在nexus提供的repository中可能找不到,
一般比较常用的有
- JBOSS的两个:
- http://repository.jboss.org/maven2/
- http://repository.jboss.org/nexus/content/repositories/releases/
- SUN的:
- http://download.java.net/maven/2/
- K-INT的:
- http://developer.k-int.com/maven2/
- 因为找juel:juel-impl:2.2.1 这个jar包,所以我还添加了一个自己找的:
- http://repository.exoplatform.org/content/groups/public/
添加步骤:
- 点击Add->Proxy Repository->填写Repository ID, Repository Name, 以及Remote Storage Location 其他的默认即可。
3) 将新增的Repository添加到Public Repositories中
在Public Repositories 的Configuration中,将多选Select中的项全部添加到左边,然后保存。
4) 添加自己的jar包
- 在repository列表中有一个3rd party,也就是第三方jar包,点击会看到一个Artifact Upload选项卡,点击后,填写相应的信息。
- GAV Definition 一般选择 GAV Parameters
- 然后添加Group:Artifact:Version:Package
- 示例 juel:juel-impl:2.2.1:jar
然后选择要上传的jar包,保存即可
5) nexus中设置代理服务器
选择左侧administrator菜单中的Server选项,在右侧打开的页面的中下部,有一个选择项:Default HTTP Proxy Settings(optional) 将复选框选中,填写相应的代理服务器信息即可。
6) 编写自己的settings.xml,文件内容如下:
- <settings>
- <proxies>
- <proxy>
- <id>normal</id>
- <active>true</active>
- <protocol>http</protocol>
- <username>deployment</username>
- <password>deploy</password>
- <host>localhost:8081/nexus</host>
- <port>80</port>
- <nonProxyHosts>localhost:8081/nexus</nonProxyHosts>
- </proxy>
- </proxies>
- <mirrors>
- <mirror>
- <!--This is used to direct the public snapshots repo in the
- profile below over to a different nexus group -->
- <id>nexus-public-snapshots</id>
- <mirrorOf>public-snapshots</mirrorOf>
- <url>http://localhost:8081/nexus/content/groups/public-snapshots</url>
- </mirror>
- <mirror>
- <!--This sends everything else to /public -->
- <id>nexus</id>
- <mirrorOf>*</mirrorOf>
- <url>http://localhost:8081/nexus/content/groups/public</url>
- </mirror>
- </mirrors>
- <profiles>
- <profile>
- <id>development</id>
- <repositories>
- <repository>
- <id>central</id>
- <url>http://central</url>
- <releases><enabled>true</enabled></releases>
- <snapshots><enabled>true</enabled></snapshots>
- </repository>
- </repositories>
- <pluginRepositories>
- <pluginRepository>
- <id>central</id>
- <url>http://central</url>
- <releases><enabled>true</enabled></releases>
- <snapshots><enabled>true</enabled></snapshots>
- </pluginRepository>
- </pluginRepositories>
- </profile>
- <profile>
- <!--this profile will allow snapshots to be searched when activated-->
- <id>public-snapshots</id>
- <repositories>
- <repository>
- <id>public-snapshots</id>
- <url>http://public-snapshots</url>
- <releases><enabled>false</enabled></releases>
- <snapshots><enabled>true</enabled></snapshots>
- </repository>
- </repositories>
- <pluginRepositories>
- font-size: 1em; m
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。