无法运行Gradle应用引擎任务

Dan*_*ell 2 java gradle google-cloud-platform

我真的很困惑将旧的Google App Engine项目转换为Gradle。

我正在尝试按照页面上的说明进行操作。建议从以下构建脚本开始:

buildscript {    // Configuration for building
  repositories {
    jcenter()    // Bintray's repository - a fast Maven Central mirror & more
    mavenCentral()
  }
  dependencies {
    classpath 'com.google.cloud.tools:appengine-gradle-plugin:+'    // latest App Engine Gradle tasks
  }
}

repositories {   // repositories for Jar's you access in your code
  maven {
    url 'https://maven-central.storage.googleapis.com'             // Google's mirror of Maven Central
//   url 'https://oss.sonatype.org/content/repositories/snapshots' // SNAPSHOT Repository (if needed)
  }
  jcenter()
  mavenCentral()
}

apply plugin: 'java'                              // standard Java tasks
apply plugin: 'war'                               // standard Web Archive plugin
apply plugin: 'com.google.cloud.tools.appengine'  // App Engine tasks

dependencies {
  providedCompile group: 'javax.servlet', name: 'servlet-api', version:'2.5'
  compile 'com.google.appengine:appengine:+'
// Add your dependencies here.

}

appengine {  // App Engine tasks configuration
  run {      // local (dev_appserver) configuration (standard environments only)
    port = 8080                 // default
  }

  deploy {   // deploy configuration
    stopPreviousVersion = true  // default - stop the current version
    promote = true              // default - & make this the current version
  }
}

group = 'com.example.appengine'   // Generated output GroupId
version = '1.0-SNAPSHOT'          // Version in generated output

sourceCompatibility = 1.7  // App Engine Standard uses Java 7
targetCompatibility = 1.7  // App Engine Standard uses Java 7
Run Code Online (Sandbox Code Playgroud)

但是它不起作用:

$ gradle appengineRun

FAILURE: Build failed with an exception.

* Where:
Build file '/path/to/myproject/build.gradle' line: 32

* What went wrong:
A problem occurred evaluating root project 'myproject'.
> Could not find method run() for arguments [build_c1i62diotjttavcmtjg1zqlbd$_run_closure3$_closure5@33f17289] on root project 'myproject' of type org.gradle.api.Project.

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

BUILD FAILED
Run Code Online (Sandbox Code Playgroud)

不应下载依赖项以使自定义appengine任务配置起作用吗?

Opa*_*pal 5

请查看插件的来源。应用核心插件后,它会决定是应用灵活的还是标准的 appengine插件。由于可能没有src/main/webapp/WEB-INF/appengine-web.xml应用没有创建不会失败的扩展的灵活插件(仅供参考,此扩展在此处创建)。要解决此问题,请运行:

mkdir -p src/main/webapp/WEB-INF
Run Code Online (Sandbox Code Playgroud)

然后:

touch src/main/webapp/WEB-INF/appengine-web.xml
Run Code Online (Sandbox Code Playgroud)

在控制台所在build.gradle的位置。这样可以解决问题。不良的文档:/