我用我写的一个小任务:
grails create-script my-script
我正在使用我的构建配置中的插件中的一些代码:
compile ":csv:0.3.1"
但是,当我执行我的gant脚本时,它不在类路径中。我在依赖关系中使用了另一个依赖项,如下所示:
dependencies {
build 'com.atlassian.jira:jira-rest-java-client-api:2.0.0-m25'
build 'com.atlassian.jira:jira-rest-java-client-core:2.0.0-m25'
}
它们被加载在类路径上。但是,我的插件代码不是。如何让插件代码与gant脚本一起使用?
更新
以下是我的脚本开始的方式:
includeTargets << grailsScript("_GrailsInit")
includeTargets << grailsScript("_GrailsClasspath")
includeTargets << grailsScript("_GrailsCompile")
target(main: "Creates JIRA tasks for Content Developers based on given lesson file.") {
depends(compile)
....
}
答案 0 :(得分:1)
解决此问题的方法是使用以下内容:
includeTargets << grailsScript("_GrailsInit")
includeTargets << grailsScript("_GrailsBootstrap")
target(main: "Creates JIRA tasks for Content Developers based on given lesson file.") {
depends( bootstrap )
...
}
然而,我在Spring框架版本2.5.6中有一个传递依赖性,这是一个烂摊子。我得到了以下内容:
org.codehaus.groovy.grails.commons.spring.GrailsApplicationContext.getEnvironment()Lorg/springframework/core/env/ConfigurableEnvironment;
对此的修复如下:
dependencies {
build( 'com.atlassian.jira:jira-rest-java-client-api:2.0.0-m25' ) {
excludes([group: "org.springframework", name:"spring-context", version:"2.5.6"],
[group:"org.springframework", name:"spring-beans", version:"2.5.6"],
[group:"org.springframework", name:"spring-core", version:"2.5.6"])
}
build('com.atlassian.jira:jira-rest-java-client-core:2.0.0-m25') {
excludes([group: "org.springframework", name:"spring-context", version:"2.5.6"],
[group:"org.springframework", name:"spring-beans", version:"2.5.6"],
[group:"org.springframework", name:"spring-core", version:"2.5.6"])
}
}