若是a項目依賴於b項目,打包b項目時,只會打包到b項目下target下,編譯a項目時就會報錯,由於找不到所依賴的b項目,說明a項目在本地倉庫是沒有找到它所依賴的b項目。java
若是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等)安裝到本地倉庫,能夠供其餘項目使用。
問題:
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的調用這個的版本