4

我正在尝试按照本教程设置 Grails/Cargo:https ://github.com/bmuschko/gradle-cargo-plugin 我希望使用此插件将战争部署到本地 tomcat 实例并启动和停止它们。

这是我的 build.gradle

apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'cargo'

sourceCompatibility = 1.5
version = '1.0'
jar {
    manifest {
        attributes 'Implementation-Title': 'Gradle Quickstart', 'Implementation-Version': version
    }
}

repositories {
    mavenCentral()
}

dependencies {
    compile group: 'commons-collections', name: 'commons-collections', version: '3.2'
    testCompile group: 'junit', name: 'junit', version: '4.+'
    classpath 'org.gradle.api.plugins:gradle-cargo-plugin:0.6.1'
    def cargoVersion = '1.3.3'
    cargo "org.codehaus.cargo:cargo-core-uberjar:$cargoVersion",
          "org.codehaus.cargo:cargo-ant:$cargoVersion"

}

cargo {
    containerId = 'tomcat6x'
    port = 9090

    deployable {
        file = file('/Users/me/Documents/gradlemucks/grails_2/hello-world/target/hello-world-0.1.war')
        context = 'helloworld'
    }

    local {
        homeDir = file('/Users/me/developer/servers/apache-tomcat-6.0.37')
        output = file('build/output.log')

        tomcat {
            ajpPort = 9091
        }
    }
}

test {
    systemProperties 'property': 'value'
}

uploadArchives {
    repositories {
       flatDir {
           dirs 'repos'
       }
    }
}

当我gradle tasks在终端中做时,我得到:

FAILURE: Build failed with an exception.

* Where:
Build file '/Users/me/Documents/workspaces/regress_test/httptests/build.gradle' line: 3

* What went wrong:
A problem occurred evaluating root project 'httptests'.
> Plugin with id 'cargo' not found.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

我做错了什么?

4

1 回答 1

5

buildscript 本身需要 cargo 依赖,因此添加:

buildscript {
    repositories {
        mavenCentral()
    }

    dependencies { classpath "org.gradle.api.plugins:gradle-cargo-plugin:0.6"  }
}

应该使它能够找到货物插件。

于 2013-07-28T12:05:10.800 回答