我试图找到有关如何将本地/非maven jar文件添加到Grails 3.x项目的文档和代码示例?
我找到了单独的帖子How to add a non-maven jar to grails - 但这只是grails 2.3,文件结构和配置在3.x中经历了一次大修。
任何帮助和(特别是)代码示例都会很精彩! .jar位于本地项目目录中,我打算使用.war进行打包以进行部署。
此外,一旦我添加了依赖项,我是否应该能够从控制器和放大器中调用它的方法。服务文件?或者我是否也需要将它们包含在那些中?
THX!
答案 0 :(得分:25)
Grails 3使用Gradle,因此Grails没有特别关于包含本地jar的内容。只需将文件相关性添加到dependencies
文件的build.gradle
块即可。
根据Gradle documentation on File Dependencies:
要将某些文件添加为配置的依赖项,只需将文件集合作为依赖项传递:
dependencies {
...
compile files('libs/a.jar', 'libs/b.jar')
// or
compile fileTree(dir: 'libs', include: '*.jar')
}
上面的示例显示了两种方法来包含存在于本地libs/
目录中的jar;你可以做任何一个/或。 jar可以在文件系统的任何位置,只需确保指向正确的路径。
要在应用程序中使用依赖项中的类,您可以将它们包含在您的服务,控制器和所有其他类中,就像您通常那样。假设libs/a.jar
有一个类org.example.Something
,您可以像这样在Grails类的顶部添加导入:
import org.example.Something