2013-06-28 40 views
33

Tôi đang sử dụng Gradle 1.6 đi kèm với Groovy 1.8.6 và ở đây có vấn đề, tôi muốn thực thi kịch bản lệnh groovy cần Groovy 2+, nhưng Gradle đang chạy tập lệnh này với câu đố của riêng mình (1.8 .6) và tác vụ tùy chỉnh của tôi không thành công.Chạy các kịch bản Groovy từ Gradle

+0

Và những gì ngăn cản bạn từ backporting kịch bản của bạn để làm việc với Gro ovy 1.8.x? – fge

+0

Groovy 1.8.x không thể phân tích cú pháp các tệp XML lớn, đó là điều ngăn tôi chuyển đổi – IowA

+5

«Phân tích cú pháp không thể phân tích cú pháp tệp XML lớn» không hoàn toàn sai – moskiteau

Trả lời

69

Bạn có thể tạo src/main/groovy, đưa kịch bản của bạn được gọi là 'myscript.groovy' trong đó:

println "hello world from groovy version ${GroovySystem.version}" 

Sau đó, có một tập tin trong thư mục gốc build.gradle dự án của bạn:

apply plugin: 'groovy' 

repositories { 
    mavenCentral() 
} 

dependencies { 
    compile 'org.codehaus.groovy:groovy-all:2.0.5' 
} 

task runScript (dependsOn: 'classes', type: JavaExec) { 
    main = 'myscript' 
    classpath = sourceSets.main.runtimeClasspath 
} 

Sau đó, bạn có thể thực hiện kịch bản của bạn (với sản lượng)

[email protected]:ex $ gradle runScript 
:compileJava UP-TO-DATE 
:compileGroovy 
:processResources UP-TO-DATE 
:classes 
:runScript 
hello world from groovy version 2.0.5 

BUILD SUCCESSFUL 

Total time: 6.118 secs 
Các vấn đề liên quan