[Maven實戰](6)倉庫(本地倉庫,遠端倉庫,映象)
3. 本地倉庫 預設情況下,不管是在windows還是linux上,每個使用者在自己的使用者目錄下都有一個路徑名為.m2/repository/的倉庫目錄。有時候,因為某些原因(例如C盤空間不夠,或者要重灌系統等等),使用者會想要自定義本地倉庫目錄地址。這時,可以編輯檔案~/.m2/settings.xml,設定localRepository元素的值為想要的倉庫地址。例如:
<settings>
<localRepository>D:\IT\maven\repo</localRepository>
<settings>
這樣,該使用者的本地倉庫地址就被設定成了 D:\IT\maven\repo。需要注意的是,預設情況下,~/.m2/settings.xml檔案是不存在的,使用者需要從Maven安裝目錄複製$M2_HOME/conf/settings.xml檔案再進行編輯。
一個構件只有在本地倉庫中之後,才能由其他Maven專案使用,那麼構件如何進入到本地倉庫中呢?
(1)最常見的是Maven從遠端倉庫下載到本地倉庫中本地倉庫好比書房,我需要讀書的時候先從書房找,相應的,Maven需要構件的時候先從本地倉庫找。遠端倉庫就好比書店,當我無法從自己的書房找到需要的書的時候,就會從書店購買後放到書房。相應的,當Maven無法從本地倉庫找到需要的書的時候,就會從遠端倉庫下載構件到本地倉庫。一般的,對於每個人來說,書房只有一個,但外面的書店卻有很多,類似的,對於Maven來說,每個使用者只有一個本地倉庫,但可以配置很多遠端倉庫。 5. 中央倉庫 由於最原始的本地倉庫是空的,Maven必須知道至少一個可用的遠端倉庫,才能在執行Maven命令的時候下載到需要的構件。中央倉庫就是這樣一個預設的遠端倉庫,Maven的安裝檔案自帶了中央倉庫的配置。讀者可以使用解壓工具開啟jar檔案$M2_HOME/lib/maven-model-builder-3.3.9.jar,然後訪問路徑:org/apache/maven/model/pom-4.0.0.xml,可以看到如下的配置:
<repositories>
<repository>
<id>central</id>
<name>Central Repository</name>
<url>https://repo.maven.apache.org/maven2</url>
<layout>default</layout>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
</repositories>
包含這段配置的檔案是所有Maven專案都會繼承的超級POM。這段配置使用central對中央倉庫進行唯一標識,其名稱為Central Repository,它使用default進行倉庫佈局。最後需要注意的是snapshots元素,其子元素enabled的值為false,表示不從該中央倉庫下載快照版本的構件。
6. 映象倉庫
如果倉庫X可以提供倉庫Y儲存的所有內容,那麼就可以認為X是Y的一個映象。換句話說,任何一個可以從倉庫Y獲得的構件,都能夠從它的映象中獲取。舉個例子,http://maven.oschina.net/content/groups/public/ 是中央倉庫http://repo1.maven.org/maven2/ 在中國的映象,由於地理位置的因素,該映象往往能夠提供比中央倉庫更快的服務。因此,可以配置Maven使用該映象來替代中央倉庫。編輯settings.xml(apache-maven-3.3.9\conf\settings.xml),程式碼如下:
<mirrors>
<mirror>
<id>maven.oschina.net</id>
<mirrorOf>central</mirrorOf>
<name>maven mirror in China</name>
<url>http://maven.oschina.net/content/groups/public/</url>
</mirror>
</mirrors>
該例中,mirrorOf的值為central,表示該配置為中央倉庫的映象,任何對於中央倉庫的請求都會轉至該映象,使用者也可以使用同樣的方法配置其他倉庫的映象。id表示映象的唯一識別符號,name表示映象的名稱,url表示映象的地址。
關於映象的一個更為常見的用法是結合私服。由於私服可以代理任何外部的公共倉庫(包括中央倉庫),因此,對於組織內部的Maven使用者來說,使用一個私服地址就等於使用了所有需要的外部倉庫,這可以將配置集中到私服,從而簡化Maven本身的配置。在這種情況下,任何需要的構件都可以從私服獲得,私服就是所有倉庫的映象。以後再慢慢介紹私服的使用。
下面提供一些別的映象倉庫:
<mirror>
<id>CN</id>
<name>OSChina Central</name>
<url>http://maven.oschina.net/content/groups/public/</url>
<mirrorOf>central</mirrorOf>
</mirror>
<mirror>
<id>repo2</id>
<mirrorOf>central</mirrorOf>
<name>Human Readable Name for this Mirror.</name>
<url>http://repo2.maven.org/maven2/</url>
</mirror>
<mirror>
<id>net-cn</id>
<mirrorOf>central</mirrorOf>
<name>Human Readable Name for this Mirror.</name>
<url>http://maven.net.cn/content/groups/public/</url>
</mirror>
<mirror>
<id>ibiblio</id>
<mirrorOf>central</mirrorOf>
<name>Human Readable Name for this Mirror.</name>
<url>http://mirrors.ibiblio.org/pub/mirrors/maven2/</url>
</mirror>
<mirror>
<id>jboss-public-repository-group</id>
<mirrorOf>central</mirrorOf>
<name>JBoss Public Repository Group</name>
<url>http://repository.jboss.org/nexus/content/groups/public</url>
</mirror>
<mirror>
<id>JBossJBPM</id>
<mirrorOf>central</mirrorOf>
<name>JBossJBPM Repository</name>
<url>https://repository.jboss.org/nexus/content/repositories/releases/</url>
</mirror>
來源於:《Maven實戰》
相關推薦
[Maven實戰](6)倉庫(本地倉庫,遠端倉庫,映象)
1. 簡介 maven可以在某個位置統一儲存所有maven專案共享的構件,這個統一的位置就是倉庫。實際的Maven專案將不會各自儲存其依賴檔案,它們只需要宣告這些依賴的座標,在需要的時候(例如,編譯專案的時候需要將依賴加入到classpath中),maven會自動根據
Maven(1)——(本地倉庫,遠端倉庫)
Maven 在開發Java專案的過程中,經常會引入大量的Jar檔案,在專案目錄下,往往會看到一個名為/lib的子目錄,那裡存放著各類第三方依賴jar檔案,如 log4j.jar,junit.jar等等。每建立一個專案,開發人員都必須走這一步。多個專案不共用相同的j
使用vsftpd服務傳輸檔案(匿名使用者認證、本地使用者認證、虛擬使用者認證)
vsftpd是一款執行在Linux作業系統上的FTP服務程式,不僅完全開源而且免費,此外,還具有很高的安全性、傳輸速度,以及支援虛擬使用者驗證等其他FTP服務程式不具備的特點。 vsftd作為更加安全的檔案傳輸的服務程式,允許使用者以三種認證模式登入到FTP伺服器上。 匿名開放模式: 是一種最不安全
linux(centos7)中安裝mysql,修改密碼,遠端連線,從sqlyog連線一套教程(自己整理,筆記)
2.開啟MySQL遠端訪問許可權 允許遠端連線 改表法: use mysql; update user set host = '%' where user = 'root'; FLUSH PRIVILEGES; ps:網上還要修改防火牆的方法,我沒成功,
Maven部署本地jar到遠端倉庫
要將jar部署到外部儲存庫,您必須在pom.xml中配置儲存庫url和用於在settings.xml中的庫連線的身份驗證資訊。 下面是一個使用scp和使用者名稱/密碼身份驗證的示例: <
Maven之本地倉庫,遠端倉庫
在Maven中,任何一個依賴、外掛或者專案構建的輸出,都可以稱之為構件。 Maven在某個統一的位置儲存所有專案的共享的構件,這個統一的位置,我們就稱之為倉庫。(倉庫就是存放依賴和外掛的地方) 任何一個構件都有一個座標作為唯一的標識。 這個座標就是:group、artif
maven修改本地倉庫,遠端倉庫與中央倉庫
什麼是Maven倉庫在不用Maven的時候,比如說以前我們用Ant構建專案,在專案目錄下,往往會看到一個名為/lib的子目錄,那裡存放著各類第三方依賴jar檔案,如 log4j.jar,junit.jar等等。每建立一個專案,你都需要建立這樣的一個/lib目錄,然後複製一對jar檔案,這是很明顯的重複。重複永
maven 整合支付寶,匯入alipay-sdk-java包到本地倉庫,遠端倉庫
1.環境變數新增: MAVEN_HOME:(maven位置) M2_HOME:(maven位置) PATH:%M2_HOME%\bin (驗證maven是否配置成功cmd–>mvn -version(或者 mvn -v)) 2.安裝sdk到本地倉
Git 本地倉庫推送多個遠端倉庫
使用: git remote add [name,預設:origin] [url,遠端倉庫地址https] 可以給我們的本地倉庫增加遠端倉庫的連線(推送)地址。 所以只要指定的[name] [url]都不一致,便可以給本地倉庫增加多個遠端倉庫。 示例 如下圖:
如何建立/修改遠端倉庫 + 如何刪除遠端倉庫 + 如何刪除遠端倉庫中的某個檔案或資料夾 + 如何使用git將本地倉庫連線到多個遠端倉庫
首先我們來區分一些概念、術語、名詞。不然腦子一鍋粥,總是暈!!!博主對此深有體會!從中學到了沒事要多總結、多歸類! 倉庫有本地倉庫和遠端倉庫之分。倉庫都可以叫做服務端(器)。本地倉庫有:Windows、Linux、MacOS。(指的是執行在不同系統下的本地倉庫)遠端倉庫有:GiuHub(國外)、Gi
git衝突之git pull時,同一個檔案,遠端倉庫裡已經修改了,不幸的是你在本地倉庫也修改了
0、git pull,爆出一個錯誤,pull failed Your local changes would be overwritten by merge. Commit, stash or revert them to proceed. 你本地修改的將會被合併覆蓋。要麼提交、要麼儲存
GitExtension推送pull本地資料到遠端倉庫
1.建立新的檔案庫 如果是自己已經開發的專案,直接選中開發的專案目錄,直接進行初始化,得到初始化的檔案庫,會顯示下列頁面 從檔案樹看到初始化的檔案庫為空,此時點選提交,會跳轉到工作區間的更新頁面 “提交”是將檔案提交到本地庫 “提交併推送”則是同時將檔案提交到本地庫並
通過Android studio使用git建立本地分支提交遠端倉庫以及如何檢視切換分支
我們有時候對命令不熟悉的同學例如我,那麼這個AS自帶的這個建立分支功能就對我們必不可少了。 首先我們看下遠端倉庫只有主支master,沒有任何分支的資訊如下圖: 1.首先我們開啟AS,點選右下角的git會彈出選單:如下(右下角預設顯示的事g
git 本地倉庫和遠端倉庫及本地分支和遠端分支
從遠端git倉庫簽出程式碼: $ git clone git://aaa.com/git_project.git (遠端git伺服器專案所在地址) 當你需要克隆遠端專案到本地時,預設會把專案儲存在名為 git_project 資料夾下面. 你也可以指定本地的一個空資料夾ccc git clone git
初步建立遠端倉庫,將本地倉庫上傳到git 遠端倉庫裡
最近開始做一個新的專案,在第一步建立遠端倉庫都遇到的麻煩, 一直處這個錯: ! [rejected] master -> master (fetch first) error: failed to push some refs to
github—本地建立與遠端倉庫的聯絡以及程式碼上傳與合併
一.註冊github 首先需要註冊github 並將本地生成的SSH keys放到github上setting裡的SSH and GPG keys 裡面去 二.clone到本地並建立關聯 git clone https://github.
【TortoiseGit】建立本地倉庫並上傳至遠端倉庫
今天早上弄了一早上,老是失敗 ,所以這裡把踩過的坑記錄下來,以後也可以看看。 一. 新建遠端倉庫 在網頁端Github建立遠端倉庫。 <1>
Maven系列第6篇:生命週期和外掛詳解,此篇看過之後在maven的理解上可以超越同級別90%的人!
maven系列目標:從入門開始開始掌握一個高階開發所需要的maven技能。 這是maven系列第6篇。 整個maven系列的內容前後是有依賴的,如果之前沒有接觸過maven,建議從第一篇看起,本文尾部有maven完整系列的連線。 前面我們使用maven過程中,用到了一些命令,如下: mvn clean mvn
linux採用scp命令拷貝檔案到本地,拷貝本地檔案到遠端伺服器,伺服器之間傳輸檔案
拷貝遠端伺服器的檔案到本地: scp -r -P 埠號 使用者名稱@IP地址:/usr/local/tomcat_airc/webapps/ /tmp/kyj/ 拷貝本地檔案到遠端伺服器: scp -r /tmp/kyj/sys.war
Git工作區,暫存區,遠端倉庫及分支管理
一,Git的工作區與暫存區 Git的工作區(working directory),就像我們平時看到的目錄一樣。Git的版本庫中包含了暫存區(stage或者index)以及Git為我們自動建立的第一個分支master,和指向master的一個指標HEAD。 當