我的项目中有以下设置......
我想做的是:
我有什么选择?
任何帮助/建议都将不胜感激。
答案 0 :(得分:2)
原来我需要做的就是添加以下内容然后grails插件为我处理依赖项...
compile project(':dependent-project')
适用于run-app和war ......
答案 1 :(得分:0)
问题的部分解决方案是使用Gradle和Grails maven插件。我有类似的情况,我正在构建与Grails项目的依赖关系的jar。
我选择的方法是将install
java工件放入本地.m2 / repo,然后使用mavenLocal()repo在grails/conf/BuildConfig.groovy
下声明依赖关系。
我没有考虑的是将gradle挂钩到事件生命周期(有趣的想法,顺便说一句),而是定义了一个包装grails应用程序的gradle项目(执行test-app,run-app等)。我的grails应用程序的gradle包装器依赖于另一个组件的install
任务,所以它总是检查是否需要重建它。
我是Eclipse用户,所以我不能对你问题的Intellij部分发表评论,但上面的内容对我有用,所以我希望它能给你一些想法吗?
答案 2 :(得分:0)
我目前的解决方案是:
目前这对IntelliJ的整个负载没有帮助,但我将以IntelliJ运行配置运行我的gradle任务。
我的build.gradle如下所示(依赖项目在这个例子中是jarred并放在lib中):
import org.grails.gradle.plugin.GrailsTask
evaluationDependsOn(':dependent-project')
buildscript {
repositories {
mavenCentral()
mavenRepo name: "grails", url: 'http://repo.grails.org/grails/repo'
}
dependencies {
classpath "org.grails:grails-gradle-plugin:1.1.1-SNAPSHOT"
}
}
repositories {
mavenCentral()
mavenRepo name: "grails", url: 'http://repo.grails.org/grails/repo'
}
ext {
version = "1.0"
grailsVersion = "2.2.0.RC2"
grailsTaskPrefix = "grails-"
}
apply plugin: "grails"
dependencies {
['dependencies', 'resources', 'core', 'test', 'hibernate', 'plugin-datasource', 'plugin-domain-class', 'plugin-tomcat', 'plugin-services'].each { plugin ->
compile "org.grails:grails-$plugin:2.2.0.RC2"
}
bootstrap "org.codehaus.groovy:groovy-all:2.0.5"
}
// Get hold of the grails-run-app task (which is created on the fly) and add a dependency to the copyDependencies task
project.gradle.afterProject { p, ex ->
if (p == project) {
project.tasks.addRule("Grails dependencies") { String name ->
if (name.startsWith(grailsTaskPrefix)) {
tasks.getByName(name).dependsOn(copyDependencies)
}
}
}
}
// Build and copy any dependent jar files...
task copyDependencies(type: Sync) {
from project(':dependent-project').configurations.archives.allArtifacts.files
into "$projectDir/lib"
}