我们有一个包含2个模块的项目;网络和客户
Web模块是Grails应用程序,客户端模块主要是常规代码和Java代码。客户端模块由Gradle构建脚本管理。
Grails模块在客户端模块中具有依赖关系。在IntelliJ中,我可以在模块配置中定义它没有问题。但是,在构建Grails WAR时,我确实需要构建客户端JAR并将其放在WAR文件中。我想知道最好的方法是什么?
答案 0 :(得分:1)
这是我最终做的事情。
在我的Gradle脚本中,我有以下内容:
repositories {
mavenCentral()
flatDir {
name "genRocketRepos"
dirs "${System.properties['user.home']}/.genRocket/repos"
}
}
uploadArchives {
repositories {
add project.repositories.genRocketRepos
}
}
然后我通过Gradle运行uploadArchives任务。这将JAR文件发布到本地存储库。在Grails BuildConfig.groovy中,我定义了以下内容:
repositories {
...
flatDir name:'myRepo', dirs:'${userHome}/.genRocket/repo'
}
dependencies {
...
runtime 'genRocket:client:1.0'
}
现在Grails看到依赖项并包含在类路径中,并将JAR放在WAR中。