2014-10-03 69 views
0

我有一个Grails PRJ(2.4.3)与多个插件中,Grails更新(2.4.3)插件无法看到

  • 主要PRJ
  • 插件中
  • 插件的使用b

在Main PRJ buildConfig.groovy是:

plugins { 
      // plugins for the build system only 
      build ":tomcat:7.0.55" 

      // plugins for the compile step 
      compile ":scaffolding:2.1.2" 
      compile ':cache:1.1.7' 
      compile ":asset-pipeline:1.9.6" 
      compile ":plugin-a:0.1" 
      compile ":plugin-b:0.3" 
} 

After在pluginA修改我执行:

grails clean 
grails maven-install 
grails mavel-deploy (for remote nexus) 

在主PRJ

grails clean 
grails refresh-dependencies 
grails run-app 

但该项目启动时我看不到在PluginA更新。我必须在plugindescriptor中增加版本。在此之后,我可以看到更新!

现在..

  1. 是不可能性,以避免增加版本?
  2. 什么是最好的 练习开发多个插件?

在此先感谢

路易斯

回答

0

从官方DOC:

配置更改依存关系典型地,依赖是 恒定。也就是说,对于给定的组合,名称和版本 ,它引用的jar(或插件)永远不会改变。 Grails 依赖关系管理系统使用这一事实来缓存依赖关系,以避免必须从源存储库中每次下载它们到 时间。有时候这是不可取的。例如,许多开发者 使用快照约定(即,以“SNAPSHOT”结尾的版本 数字的依赖关系),其可以不时地改变 ,同时仍保持相同的版本号。我们称之为 “改变依赖性”。

每当您有一个不断变化的依赖关系时,Grails将始终检查 远程存储库中的新版本。更具体地说,当在依赖性解析期间遇到改变依赖性时,其本地缓存中的最后修改时间戳 与依赖库中最后修改的时间戳 进行比较。如果远程服务器上的版本 被认为比 本地缓存中的版本更新,则会下载并使用新版本。

然后,如果我用** - **快上我的lib中,每compilemaven-install会给我一个更新库。

1

删除应用程序的根目录下的target目录,而不是运行grails clean的。然后grails compile将引入您的插件更改,而不必增加插件版本。