2013-05-13 71 views
5
  1. 在我的maven回購(.m2)中。有一個我的本地jar像sub_app-0.1.jar。
  2. 我有它在常春藤緩存中的副本。
  3. 我在sub_app上運行maven install然後創建新的sub_app-0.1.jar文件。
  4. 之後,我運行grails clean,它沒有從.m2中得到我的新的sub_app-0.1.jar。
  5. 但是,如果我從ivy-cache中刪除(刪除)sub_app-0.1.jar文件並運行grails clean,那麼它會將新的sub_app-0.1.jar文件放入ivy-cache中。Grails - 如何讓grails從Maven倉庫獲取最新的本地jar文件

  6. 如果我更改子應用程序pom和grails中的版本,並且pom和grails將採用最新版本。再次安裝它沒有采取。

  7. 我嘗試了通過添加SNAPSHOT甚至支持應用程序jar。同樣的結果,第一次採取,沒有後。

即,只考慮ivy-cache中的jar名稱和版本的Grails,如果有的話 - 不需要。 如果沒有 - 它取自.m2。

但它沒有考慮新/舊版本。

請幫助在步驟4中獲得相同的行爲(步驟5)。

回答

0

修訂

你可以嘗試添加變化=真BuildConfig.groovy你的依賴,如Grails Guide

compile ('YOUR_GROUP_ID:YOUR_SUB_AP:0.1') { 
    changing = true 
} 
+0

抱歉地說, 「真useOrigin」 不工作。你能否以其他方式建議我。 – Sun 2013-05-13 13:05:26

+0

我使用了-SNAPSHOT,甚至沒有解決,可以任何機構幫助我請 – Sun 2013-05-14 05:40:15

+0

更改= true也不工作在我的情況下 – Sun 2013-05-15 07:18:12

0

不知道指定這是否是同樣的問題你,但我使用Spring Source Tool Suite(STS)和一個'接口'項目(它只包含接口,bean,pojos等)的'grails'項目。

如果我在STS的接口上運行maven install,那麼maven會正確更新最新的jar(我使用'-1.0-SNAPSHOT'作爲我的版本號)。

如果我然後在STS的grails項目中運行grails clean,Grails會正確識別接口jar的變化(我在BuildConfig.groovy中有{changing = true}),下載pom,但是未能下載jar,因爲它不能從ivy-cache中刪除jar。看起來像STS有處理常春藤緩存,防止這一點。

正如我繼承了另一個開發誰告訴我這是Grails和/或STS的一個bug /功能這個項目,我已經拜倒要麼以自己的知識和解決方法如下:

  1. 行家包來替代在'interfaces'上安裝,然後將最新的jar複製到ivy-cache。看來STS會讓我更換罐子的內容。然後grails clean使用來自ivy-cache的最新jar(沒有嘗試從maven下載)。
  2. maven在'interfaces'上安裝,關閉STS,從ivy-cache中刪除jar,重新打開STS,grails clean,從maven下載最新的jar。

兩種解決方法都是痛苦的,所以如果有人有任何想法,我會感興趣?

+0

哦,我使用grails v2.0.1和sts v2.9.1.RELEASE,如果有幫助。 – shuttsy 2013-05-14 09:05:02

+0

我正在使用Grails 2.1.4和Groovy 2.0.4和Java 1.7,我覺得這不是個好主意 - 每次都從ivy-cache中刪除。 – Sun 2013-05-15 11:46:23

0

Grails不支持獲取最新的相同(group-id,artifact-id,version)jar甚至SNAPSHOT jar也。

解決方案:

  1. 的每次,刪除常春藤緩存子APP-version.jar。或
  2. 每次,將版本更改爲pom.xml中子應用程序jar的下一個值(應該大於當前值)。

4 Configuration - Reference Documentation

請閱讀:

4.7.6快照和其他改變依賴

+0

匿名建議編輯(http://stackoverflow.com/review/suggested-edits/2495777)表明:在Grails 2.3及更高版本中解決了這個問題,它給出了只使用Maven倉庫的選項,所以它不會至少創建ivy-cache文件夾。 – 2013-07-12 10:48:57

相關問題