N使用exus2打造企业maven仓库(三)
假設項目中,我沒有使用maven,我應該做出選擇,或為項目?;蛘哂盟鼇硗苿舆@個項目從maven。有人會問,為什么maven?無需maven我們沒有很好的操作。
這里,只說兩件事情我最欣賞:第一點是管理jar包。這包括太多的意義,比如下載jar包,由倉庫,你僅僅須要輸入包名和版本號號,馬上就能夠下載到你本機,而不須要到官網或google上找,假設下載速度慢,隨時能夠更改倉庫地址。
另外。項目中jar版本號混亂也是常見的。有些隱藏的問題就是因為jar版本號引起。而且非常難發現。
還有。一個項目中n多jar包,但誰也說不清他們之間的依賴關系,maven能夠,等等。
第二點是能夠讓你的技術習慣沒這么脫節。
前兩篇文章分別說了怎樣下載、安裝和啟動maven。以及一些注意事項和報錯處理,這篇主要說配置。
打開nexus控制臺:
這2.5.1版本號的界面。事實上maven1和maven2的界面都大同小異,maven2添加了一些選項而已。
選擇From POM,上傳pom文件(我的包已通過mvn archetype:create -DgroupId=com.ainfo.bs -DartifactId=acctmanm -DpackageName=com.kage -Dversion=1.0創建,所以有pom文件,假設沒有,填GAV參數也可)。
然后上傳jar包,上傳后記得點擊add再upload。我有幾個包就是忘記了,搞得后面查了非常久。假設忘了,是能夠補傳的,補傳的時候它覺得是update。update須要確保deployment policy選項是allow redeploy。
上傳完后。主機上應該就能夠看到這些文件了:
通過更新index(有時候不更新也能夠),能夠看到新的包:
接著,改動maven的配置文件setting.xml,指向這臺nexus主機:
<server> <id>nexus-releases</id> <username>admin</username> <password>admin123</password> </server> <server> <id>nexus-snapshots</id> <username>admin</username> <password>admin123</password> </server> </servers> <profile> <id>dev</id> <repositories> <repository> <id>local-nexus</id> <url> http://30.51.23.250:8081/nexus/content/groups/public/ </url> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>true</enabled> </snapshots> </repository> </repositories> <pluginRepositories> <pluginRepository> <id>local-nexus</id> <url> http://30.51.23.250:8081/nexus/content/groups/public/ </url> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>true</enabled> </snapshots> </pluginRepository> </pluginRepositories> </profile> <activeProfiles> <activeProfile>dev</activeProfile> </activeProfiles>也能夠改動pom.xml,因為我希望我的項目在svn上被團隊成員(流動性大)下載就自己主動指向這臺主機。所以我須要配置在pom.xml中。
最后。還有最重要的一步(非常網上文章都沒提及)。就是改動MyEclipse中配置(默認的路徑,根本就不存在setting文件):
改動為真正所在的路徑:
然后update project就會更新了:
更新后,你本機的maven倉庫會下載這個包。
假設出現沒有下載jar包。僅僅有一個update文件,比方 tapestry-3.0.4.pom.lastUpdated 。那有幾種原因。
1、你配置的倉庫地址不正確,檢查你的setting.xml(假設你配置在pom。
xml就檢查pom.xml)
2、你上傳的jar不正確。到nexus主機檢查jar是否真的上傳了
3、你上傳了jar,可是沒有update index,依照我前面說的update一下
4、你剛剛已經更新過了,所以不會自己主動更新。這樣的情況到你的本地倉庫把這個包的目錄刪掉就可以(或者僅僅刪lastupdated應該也行)
下載自己上傳的jar沒問題。下載其它的呢?也能夠測試一下。
比方下載jfree這個jar。在pom里配置好。就會自己主動下載:
到nexus機器上看下載前與下載后:
事實上控制臺所有的庫都在主機上,MyHostedRepo是我自己建的,其余默認就有。
像setting里配置的就是圖中的public:
版本號:nexus2.5.1(tgz版) maven3.2.3
2014.11.6
版權聲明:本文博客原創文章,博客,未經同意,不得轉載。
總結
以上是生活随笔為你收集整理的N使用exus2打造企业maven仓库(三)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: URAL 1225 Flags
- 下一篇: 用java进行LDAP用户登陆(用户认证