jon*_*zin 8 groovy build gradle
我正在尝试从build.gradle文件中运行Groovy类.我正在遵循使用指南中的指示,但是我收到了错误.
构建文件是:
apply plugin: 'java'
apply plugin: 'groovy'
main {
java {
srcDirs = ["$projectDir/src/java"]
}
groovy {
srcDirs = ["$projectDir/src/groovy"]
}
}
dependencies {
compile 'org.codehaus.groovy:groovy-all:2.2.0', files(....)
}
task fooTask << {
groovyClass groovyClass = new groovyClass()
groovyClass.foo()
}
Run Code Online (Sandbox Code Playgroud)
groovy类非常简单:
public class groovyClass {
public void foo() {
println 'foo'
}
}
Run Code Online (Sandbox Code Playgroud)
但是,当我尝试运行gradlew编译fooTask时,我收到以下错误:
无法解析类groovyClass
知道为什么吗?
谢谢
tim*_*tes 22
buildSrc如果要从构建中引用它(而不是在简单的Exec任务中),则需要添加该类.鉴于此目录结构:
|-buildSrc
| |- src
| |- main
| |- groovy
| |- GroovyClass.groovy
|- build.gradle
Run Code Online (Sandbox Code Playgroud)
在哪里GroovyClass.groovy:
class GroovyClass {
void foo() {
println 'foo'
}
}
Run Code Online (Sandbox Code Playgroud)
并且build.gradle是:
apply plugin: 'groovy'
dependencies {
compile 'org.codehaus.groovy:groovy-all:2.2.1'
}
task fooTask << {
GroovyClass g = new GroovyClass()
g.foo()
}
Run Code Online (Sandbox Code Playgroud)
然后,运行gradle fooTask给出输出:
$ gradle fooTask
:buildSrc:compileJava UP-TO-DATE
:buildSrc:compileGroovy UP-TO-DATE
:buildSrc:processResources UP-TO-DATE
:buildSrc:classes UP-TO-DATE
:buildSrc:jar UP-TO-DATE
:buildSrc:assemble UP-TO-DATE
:buildSrc:compileTestJava UP-TO-DATE
:buildSrc:compileTestGroovy UP-TO-DATE
:buildSrc:processTestResources UP-TO-DATE
:buildSrc:testClasses UP-TO-DATE
:buildSrc:test UP-TO-DATE
:buildSrc:check UP-TO-DATE
:buildSrc:build UP-TO-DATE
:fooTask
foo
BUILD SUCCESSFUL
Total time: 4.604 secs
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9693 次 |
| 最近记录: |