私服是架設在局域網的一種特殊的遠程倉庫,目的是代理遠程倉庫及部署第三方構件。有了私服以後,當 Maven 須要下載構件時,直接請求私服,私服上存在則下載到本地倉庫;不然,私服請求外部的遠程倉庫,將構件下載到私服,再提供給本地倉庫下載。html
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.htmljava
/usr/local/java
vim /etc/profile
添加配置vim
export JAVA_HOME=/usr/local/java export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar export PATH=$JAVA_HOME/bin:$PATH
下載地址:http://www.sonatype.com/download-oss-sonatypeoracle
下載最新的nexus:maven
$ sudo tar xvf latest-unix.tar.gz -C /opt $ sudo ln -s /opt/nexus-3.3.1-01/ /opt/nexus
$ sudo adduser nexus $ sudo chown -R nexus:nexus /opt/nexus
$ sudo chown -R nexus:nexus /opt/nexus $ sudo chown -R nexus:nexus /opt/sonatype-work/
$ sudo vim /opt/nexus/bin/nexus.rc run_as_user="nexus" :wq
$ sudo ln -s /opt/nexus/bin/nexus /etc/init.d/nexus $ sudo systemctl enable nexus nexus.service is not a native service, redirecting to /sbin/chkconfig. Executing /sbin/chkconfig nexus on
$ sudo systemctl start nexus
此時能夠訪問 http://localhost:8081,用戶名:admin ,密碼:admin123。阿里雲
若是報這個錯誤,能夠經過2步驟配置jdk的方式解決。url
因爲訪問中央倉庫有時候會比較慢,這裏我添加一個阿里雲的代理倉庫,而後優先級放到默認中央庫以前,, 阿里雲的maven倉庫url爲http://maven.aliyun.com/nexus/content/groups/publicspa
而後再public組裏面講這個aliyun-proxy
倉庫加入,排在maven-central
以前便可。3d
可在maven的默認配置settings.xml
中修改以下:代理
<servers> <server> <id>releases</id> <username>admin</username> <password>admin123</password> </server> <server> <id>snapshots</id> <username>admin</username> <password>admin123</password> </server> </servers> <mirrors> <mirror> <id>nexus</id> <mirrorOf>*</mirrorOf> <url>http://ip:8081/repository/maven-public/</url> </mirror> </mirrors> <profiles> <profile> <id>dev</id> <repositories> <repository> <id>Nexus</id> <url>http://ip:8081/repository/maven-public/</url> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>true</enabled> <updatePolicy>always</updatePolicy> </snapshots> </repository> </repositories> <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> <activeProfile>dev</activeProfile> </activeProfiles>
<distributionManagement> <repository> <id>releases</id> <name>Releases</name> <url>http://ip:8081/repository/maven-releases/</url> </repository> <snapshotRepository> <id>snapshots</id> <name>Snapshot</name> <url>http://ip:8081/repository/maven-snapshots/</url> </snapshotRepository> </distributionManagement>
注意:上面的repository的id值必定要跟settings.xml
文件中配置的server一致。
打包:mvn deploy