【本系列所有文章】
*詳細演示均在Windows操作系統(tǒng)下進行
*以Nexus+Android Studio為例
一、用戶界面
安裝成功的話巷送,127.0.0.1:8081會首先展示如下界面
二驶忌、訪問權限模型
Nexus是基于權限做訪問控制的,服務器的每一個資源都有對應的權限來控制惩系,因此用戶執(zhí)行特定的操作時就必須擁有必要的權限位岔。管理員必須以角色的方式將權限賦予Nexus用戶如筛。用戶可以被賦予一個或者多個角色,角色可以包含一個或多個權限抒抬,角色還可以包含一個或者多個其他角色杨刨。
Nexus上預定義了兩個用戶,用admin登錄后擦剑,單擊頁面左邊的User鏈接妖胀,看到如下圖列表:
admin:該用戶擁有Nexus的全部權限,默認密碼為admin123惠勒。
anonymous:該用戶對應了所有未登錄的匿名用戶赚抡,它們可以瀏覽倉庫并進行搜索。
三纠屋、為項目分配獨立的倉庫
如果我們將所有項目的快照版本和發(fā)布版本構件都部署到同樣的倉庫涂臣,就有潛在的沖突以及安全問題。我們不想讓項目A的部署影響到項目B售担,也不想讓項目B的部署影響到項目A赁遗,那么解決方法就是為每個項目分配獨立的倉庫,并且只將倉庫的部署族铆、修改和刪除權限賦予該項目的成員岩四,其他用戶只能擁有讀取、下載和搜索該倉庫內容的權限哥攘。步驟如下:
1.創(chuàng)建項目倉庫
單擊Nexus界面左邊導航欄中的Repositories鏈接剖煌,在右邊的面板中選擇create repository,在下拉菜單中選擇maven2(hosted)逝淹。接著在下面的面板中填寫倉庫的ID和名稱耕姊,選擇Repository Policy為Release,選擇Deployment Policy為Allow Redeploy栅葡,其他的選項默認箩做。點擊Create repository按鈕。
2.創(chuàng)建角色
有了倉庫以后妥畏,nexus會自動創(chuàng)建基于倉庫的增、刪安吁、查醉蚁、改權限。點擊頁面導航欄中“Security”->“Role”->單擊Create role按鈕鬼店,添加剛才創(chuàng)建的倉庫相關的權限网棍。如圖填寫相關內容:
3.創(chuàng)建用戶
點擊導航的“Users”鏈接,進入用戶界面妇智,然后單擊“Create user”按鈕滥玷。填寫相關內容氏身。并授予用戶角色信息。
四惑畴、Nexus的調度任務
在第一次配置Nexus的時候蛋欣,Maven索引怎么也下載不下來,然后在網上找了一些資料才知道有調度任務這個東西的存在如贷。后來有在《Maven實戰(zhàn)》中看到陷虎。摘錄如下:
Nexus提供了一系列可配置的調度任務來方便用戶管理系統(tǒng)。用戶可以設定這些任務運行的方式杠袱,例如每天尚猿、每周等。調度任務會在適當的時候在后臺運行楣富。
要建立一個調度任務凿掂,單擊左邊導航菜單中的“Tasks”,然后再右邊的界面上單擊Create tasks按鈕纹蝴,按照頁面上的提示填寫相關內容庄萎。
Nexus包含了以下幾種類型的調度任務:
o??? Download Indexs:為代理倉庫下載遠程索引。
o??? Empty Trash:清空Nexus的回收站骗灶,一些操作實際是將文件移到了回收站中惨恭。
o??? Evict Unused Proxied Items From Repository Caches:刪除代理倉庫中長期未被使用的構件緩存。
o??? Expire Repository Cache:Nexus為代理倉庫維護了遠程倉庫的信息以避免不必要的網絡流量耙旦,該任務清空這些信息以強制Nexus去重新獲取遠程倉庫的信息脱羡。
o??? Publish Indexs:將倉庫索引發(fā)布成可供m2eclipse和其他Nexus使用的格式。
o??? Purge Nexus Timeline:刪除Nexus的時間線文件免都,該文件用于建立系統(tǒng)的RSS源锉罐。
o??? Rebuild Maven Metadata Files:基于倉庫內容重新創(chuàng)建倉庫元數據文件maven-metadata.xml,同時重新創(chuàng)建每個文件的校驗和md5與sha1绕娘。
o??? ReIndex Repositories:為倉庫編纂索引脓规。
o??? Remove Snapshots From Repositories:以可配置的方式刪除倉庫的快照構件。
o??? Synchronize Shadow Repository:同步虛擬倉庫的內容(服務基于Maven1)险领。
五侨舆、倉庫選項說明
1.類型
o? ? Hosted(主機):接受本地提交依賴包到倉庫,一般用于公司私倉的搭建绢陌。
o ? ?Proxy(代理):可以作為其他站點依賴包的代理挨下,一般用于加速公司項目共同使用的開源庫。
o ? ?Group:混合型脐湾。
2.版本
o? ? Releases(發(fā)布):用于正式發(fā)布的版本臭笆。
o? ? Snapshot(快照):預發(fā)布的搶先測試版。
o? ? Mixed:混合的。
3.部署策略
o ? ?Allow redeploy(允許重新部署)愁铺。
o? ? Disable redeploy(關閉重新部署)鹰霍。
o? ? Read-only(只讀的)。