maven package install deploy區別

一、maven package:打包到本項目,通常是在項目target目錄下。

若是a項目依賴於b項目,打包b項目時,只會打包到b項目下target下,編譯a項目時就會報錯,由於找不到所依賴的b項目,說明a項目在本地倉庫是沒有找到它所依賴的b項目。java

二、maven install:打包會安裝到本地的maven倉庫中,若是沒有設置過maven本地倉庫,通常在用戶/.m2目錄下。

若是a項目依賴於b項目,那麼install b項目時,會在本地倉庫同時生成pom文件和jar文件,服務器

能夠看install b的日誌:maven

[INFO] — maven-install-plugin:2.5.2:install (default-install) @ b —spa

[INFO]Installing D:\Java\workspace\b\target\b-2.7.4.RELEASE.jar to日誌

C:\mavenRepository\com**\b\2.7.4.RELEASE\b-2.7.4.RELEASE.jar [INFO]xml

Installing D:\java\workspace\b\pom.xml to圖片

C:\mavenRepository\com**\b\2.7.4.RELEASE\b-2.7.4.RELEASE.pom部署

說明b項目已安裝到本地倉庫了,而且是jar和pom同時安裝的. 這時候去compile a項目,編譯經過.get

總結:

A、maven package:打包(jar等)到本項目的target下。it

B、maven install:把target下打的包(jar等)安裝到本地倉庫,能夠供其餘項目使用。

三、maven deploy:將打包的文件發佈到遠程參考,提供其餘人員進行下載依賴。

四、經常使用的maven命令:

輸入圖片說明

問題:

1.每一次咱們把代碼改了,push上去了以後,咱們在使用xbox的在部署服務的時候,這個時候咱們到底部署到服務器

的是什麼?

答:對於當我把本身在本地的代碼push上去以後,咱們經過xbox進行配置,這個時候,這個時候,咱們配置到服務器的時候

多是war包也多是各個的class文件(目前查看了一下,在xbox上面放的是jar包)

2.爲何咱們有些時候在xbox部署相似於admin的項目,咱們可能還要deploy其中的service項目。這個deploy是什麼意思

答:是由於對於咱們要部署admin的項目的時候,咱們這個項目可能還要依賴service的這個項目,若是咱們在service的時候

將其進行修改了,因此咱們要升級一個版本號,對於admin咱們就要依賴一個新的版本號的service的jar包,可是呢,這個

service的jar包只有我進行修改了,別人沒有,線上的私服也沒有,因此咱們須要deploy的操做,把這個service的新的jar包

deploy到新的私服上面,對於咱們在admin的時候,咱們就能夠調用新的service的jar包了,這個就是咱們爲何須要在部署

admin的項目的時候咱們須要deploy其中的service的項目,咱們在若是修改了service中的代碼以及core的代碼以後,咱們在

push項目的時候,咱們也依舊須要把service以及core的jar包deploy上去,還有咱們也須要改admin的調用這個的版本輸入圖片說明

相關文章
相關標籤/搜索