爲何要搭建私服?apache
在開發過程當中,有時候會使用到公司內部的一些開發包,顯然把這些包放在外部是不合適的。另外,因爲項目一直在開發中,這些內部的依賴可能也在不斷的更新。能夠經過搭建公司內部的Maven服務器,將第三方和內部的依賴統一管理,同時也能夠節省網絡帶寬,固然前提是項目所須要的構件在私服中已經存在。瀏覽器
咱們能夠在nexus的官網上找到它的相關介紹,下載地址是:http://www.sonatype.org/nexus/go
下載
服務器
# wget https://sonatype-download.global.ssl.fastly.net/nexus/oss/nexus-2.14.1-01-bundle.tar.gz 解壓 # cd /usr/local # mkdir nexus # tar -xzvf nexus-2.14.1-01-bundle.tar.gz -C nexus # cd nexus # ls nexus-2.14.1-01 sonatype-work 修改配置文件 # cd nexus-2.14.1-01/conf # vi nexus.properties #Jetty section application-port=8081 ##修改Jetty端口號 # nexus section nexus-work=${bundleBasedir}/../sonatype-work/nexus
保存以上修改
配置用戶(「#RUN_AS_USER=「這個註釋大概在第23行)網絡
# vi /usr/local/nexus/nexus-2.14.1-01/bin/nexus #RUN_AS_USER= RUN_AS_USER=root
保存以上修改
如有設置防火牆,需前往修改防火牆配置並重啓防火牆,此處略過......app
# /usr/local/nexus/nexus-2.14.1-01/bin/nexus start **************************************** WARNING - NOT RECOMMENDED TO RUN AS ROOT **************************************** Starting Nexus OSS... Started Nexus OSS.
在瀏覽器打開:http://120.77.148.74/:8081/nexus,登陸:用戶名admin 默認密碼:admin123eclipse
<repositories> <repository> <id>nexus</id> <name>My Nexus Repository</name> <url>http://120.77.148.74:8081/nexus/content/groups/public/</url> </repository> </repositories>
這樣就配置完成了。在構建maven項目時,若是在私服中存在須要的構件,則會直接從私服中下載;若是私服中沒有所需構件,則會先從網絡上下載到私服,以後纔會下載到本地。maven
以支付包爲例(前提是要具備上傳jar包到私服的權限),右擊項目,Run as->maven build..,而後填寫clean install deploy,點擊run,就會將當前項目打包到私服。ui
若是因環境問題打包出錯,嘗試把Skip Tests選項勾上url
若是依然打包錯誤,請嘗試對eclipse進行如下配置spa
上傳成功後控制檯打印以下信息
若是打包的時候要將源碼打成jar包並上傳,則須要在項目的pom文件中配置下面的信息
<build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-source-plugin</artifactId> </plugin> </plugins> </build>
登入私服管控臺帳號->點擊Repositories->3rd party->Artifact Upload->添加jar