按惯例引用GGTS中的外部依赖项

时间:2013-01-17 02:53:42

标签: grails dependency-management

如何在项目构建路径中按约定引用依赖项?请允许我详细说明......

我正在使用Groovy / Grails工具套件(GGTS 3.0)。我在BuildConfig.groovy中引用依赖关系:

dependencies {
    compile 'tgt:jaxb-utils:1.0'
}

引用的jar文件已从Artifactory repo中成功下拉 - 我可以在常春藤缓存中的本地文件系统上找到jar文件。当我运行任何grails目标(grails compilegrails run-appgrails run-tests)时,它运行正常 - 这意味着我从jar中导入类的代码没有问题。当我运行grails war时,引用的jar文件被打包到构造的战争中。

然而,这是本文的关键 - 项目构建路径默认或约定不引用此jar文件,因此从jar文件导入类的java或groovy代码报告unable to resolve class ...错误。

一种解决方案是简单地将jar文件添加到lib文件夹并相应地更新构建路径,或者修改构建路径以引用Ivy缓存文件夹中的jar文件。但是,对于以这种方式拉下的任何/所有依赖项,我必须这样做。 lib文件夹中的任何jar都将保存到团队源代码存储库中,这似乎浪费了空间,因为grails命令只能在BuildConfig.groovy中使用依赖项引用。

我在这里过于理想化(即 - 困难),还是有更好的方法来清理IDE中的unable to resolve class ...错误,而无需手动将相关jar文件添加到我的lib文件夹并更新我的构建路径?想法?

1 个答案:

答案 0 :(得分:5)

Eclipse / STS / GGTS:如果您安装了Grails插件,则可以执行以下操作:

右键点击您的项目 - > Grails工具 - >刷新依赖项(或快捷键“Alt + G,R”)