2

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

我正在使用 Groovy/Grails Tool Suite (GGTS 3.0)。我在我的 BuildConfig.groovy 中引用了依赖项:

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

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

然而,这里是这篇文章的症结所在——项目构建路径默认或约定不引用这个 jar 文件,所以我从 jar 文件中导入类的 java 或 groovy 代码会报告unable to resolve class ...错误。

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

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

4

1 回答 1

5

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

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

于 2013-01-17T07:30:54.353 回答