2013-05-13 49 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

相关问题