Linux Maven私服安装
前景
我对maven私服其实并不感冒,国内阿里云的镜像已经可以满足日常工作需要,为什么想着去弄maven私服,想想也是件不得已的事情。
由于项目性质从项目外包发展到人力外包,小伙伴的办公场地和环境发生了变化,无网或者部分网络限制的情况也是深恶痛绝。因为项目涉及10个左右的程序,而且都是maven构建,前期都是带笔记本回家搞的,考虑到后期新员工的加入,所以我决定今天来搭建一个maven环境,方便项目使用。
操作系统
redhat 6.4
软件版本
软件
版本
下载
JDK
1.6.0_45
MAVEN
3.0.4
NEXUS
nexus-2.5.1-01
点击下载软件
操作步骤
安装JDK
用root用户(其他用户也可以)登录服务器,在/opt目录下创建jdk目录。
将jdk-6u45-linux-x64.bin上传到/opt/jdk目录下。
解压jdk-6u45-linux-x64.bin。
./jdk-6u45-linux-x64.bin
在/ect/profile文件底部,配置JDK环境变量后并保存。
cd /etc vi profile ## 这是jdk环境变量 export JAVA_HOME=/opt/jdk/jdk1.6.0_45 export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar export PATH=$JAVA_HOME/bin:$PATH
使环境变量生效
source profile
查看JDK是否安装成功。
java -version java version 1.6.0_45 Java(TM) SE Runtime Environment (build 1.6.0_45-b06) Java HotSpot(TM) 64-Bit Server VM (build 20.45-b01, mixed mode)
安装Maven
在/opt目录下创建maven目录。
将apache-maven-3.0.4上传到/opt/maven目录下。
解压apache-maven-3.0.4
tar -zxvf apache-maven-3.0.4.tar.gz ll drwxr-xr-x. 2 root root 4096 Apr 18 14:10 bin drwxr-xr-x. 2 root root 4096 Apr 18 14:10 boot drwxrwxrwx. 2 root root 4096 Jan 17 2012 conf drwxrwxrwx. 3 root root 4096 Jan 17 2012 lib -rw-r--r--. 1 root root 11358 Jan 17 2012 LICENSE.txt -rw-r--r--. 1 root root 1007 Jan 17 2012 NOTICE.txt -rw-r--r--. 1 root root 2482 Jan 17 2012 README.txt
在/ect/profile文件底部,配置Maven环境变量后并保存。
export MAVEN_HOME=/opt/maven/apache-maven-3.0.4 export PATH=${PATH}:${MAVEN_HOME}/bin
使环境变量生效。
source profile
查看Maven是否安装成功。
mvn -v Apache Maven 3.0.4 (r1232337; 2012-01-17 16:44:56+0800) Maven home: /opt/maven/apache-maven-3.0.4 Java version: 1.6.0_45, vendor: Sun Microsystems Inc. Java home: /opt/jdk/jdk1.6.0_45/jre Default locale: en_US, platform encoding: UTF-8 OS name: "linux", version: "2.6.32-358.el6.x86_64", arch: "amd64", family: "unix"
安装Neuxs
在/opt目录下创建nexus目录。
将nexus-2.5.1-01-bundle.tar.gz上传到/opt/maven目录下。
解压nexus-2.5.1-01-bundle.tar.gz
tar -zxvf nexus-2.5.1-01-bundle.tar.gz ll drwxr-xr-x. 8 root root 4096 Jun 29 2013 nexus-2.5.1-01 drwxr-xr-x. 3 root root 4096 Mar 5 2013 sonatype-work
启动nexus服务
cd nexus-2.5.1-01/bin ./nexus start
看到下述警告,说明没有启动成功,接着添加用户的执行,这里用到root用户。
**************************************** WARNING - NOT RECOMMENDED TO RUN AS ROOT **************************************** If you insist running as root, then set the environment variable RUN_AS_USER=root before running this script. export RUN_AS_USER=root
重新启动nexus服务
./nexus start Starting Nexus OSS... Started Nexus OSS.
上传本地仓库至私服仓库
这里采取了thirdparty这个仓库,服务器上对应仓库位置为/opt/nexus/sonatypework/nexus/storage/thirdparty
找到本机maven仓库位置。settings.xml中
标签中的地址。这里以作者本机仓库地址为例E:\maven\m2\repository。 将E:\maven\m2\repository目录下所有内容上传至/opt/nexus/sonatype-work/nexus/storage/thirdparty目录下(等待上传完毕)。
登录maven私服,admin/admin123。点击Repositories。在3rd party上右键点击Repair Index,查看后台日志/opt/nexus/nexus-2.5.1-01/logs/wrapper.log。
jvm 1 | 2017-04-19 09:56:16 INFO [pxpool-1-thread-1] org.sonatype.nexus.index.NexusScanningListener - Scanning of repositoryID="thirdparty" finished: scanned=4123, added=4123, updated=0, removed=0, scanningDuration=0:00:07.187 jvm 1 | 2017-04-19 09:56:18 INFO [pxpool-1-thread-1] org.sonatype.nexus.index.DefaultIndexerManager - Publishing index for repository thirdparty jvm 1 | 2017-04-19 09:56:19 INFO [pxpool-1-thread-1] org.sonatype.nexus.tasks.RepairIndexTask - Scheduled task (RepairIndexTask) finished :: Repairing repository index "3rd party" from path / and below. (started 2017-04-19T09:56:08+08:00, runtime 0:00:10.658) jvm 1 | 2017-04-19 09:56:19 INFO [pxpool-1-thread-1] org.sonatype.nexus.configuration.application.DefaultNexusConfiguration - Applying Nexus Configuration due to changes in [Scheduled Task Configuration]... 如出现上述信息,代表操作完成。Browse Index 和 Browse Storage tab页中有上传的目录结构。
点击3rd party的Repository Path,就会出现你想看到的东西啦。
settings.xml配置
在
标签下配置如下内容,其他镜像内容注释掉。 <mirror> <id>nexus-thirdparty</id> <mirrorOf>*</mirrorOf> <name>Nexus thirdparty</name> <url>http://ip:8081/nexus/content/repositories/thirdparty/</url> </mirror>
测试
- 复制一份settings.xml,并把本地仓库指向与之前不同的文件目录下。如之前目录为E:\maven.m2\repository,现指定仓库名称为E:\maven.m2\repository1
- 在开发工具中重新指定settings.xml的位置。
- 在项目的pom.xml中右键maven install。
- E:\maven.m2\repository1出现下载的包。如果下载不成功,一是前面的工作没做好,二是可能进行多次下载后,仓库中对应的包下有lastUpdate文件记得删除后重新操作步骤3。