Gradle + Intellij IDEA 13 bug

kas*_*sie 8 java jetty intellij-idea gradle

我正在尝试使用gradle 1.7,jetty 9.2和intellij IDEA 13设置简单的webapp.

这里是我正在使用的教程中的一些典型的gradle构建配置行:

apply plugin: 'jetty'

sourceCompatibility = 1.5
version = '1.1'

repositories {
    mavenCentral()
}

dependencies {
    providedCompile 'javax.servlet:servlet-api:2.5'
    // other dependencies
}
Run Code Online (Sandbox Code Playgroud)

在IDEA中启动的配置是Edit Configurations...->Add->Gradle,任务是jettyRun.对于第一次运行一切正常,jetty启动,webapp可在浏览器中使用.但是如果我在gradle.build文件中更改某些内容并重新运行该任务,则会发生以下错误:

A problem occurred configuring root project 'gr3'.
Could not open buildscript class cache for build file 'D:\Work\priv\gr3\build.gradle' (C:\Users\Sazankov_LY\.gradle\caches\1.7\scripts\build_546r8n6d85n2abfbi95h2qqmh4\ProjectScript\buildscript).

Timeout waiting to lock buildscript class cache for build file 'D:\Work\priv\gr3\build.gradle' (C:\Users\Sazankov_LY\.gradle\caches\1.7\scripts\build_546r8n6d85n2abfbi95h2qqmh4\ProjectScript\buildscript). It is currently in use by another Gradle instance.
     Owner PID: unknown
     Our PID: 11948
     Owner Operation: unknown
     Our operation: 
     Lock file: C:\Users\Sazankov_LY\.gradle\caches\1.7\scripts\build_546r8n6d85n2abfbi95h2qqmh4\ProjectScript\buildscript\cache.properties.lock
Run Code Online (Sandbox Code Playgroud)

继续工作的唯一方法是重新启动IDE

有任何想法吗?

kas*_*sie 4

经过一些研究,我发现问题出在正确的终止码头上。如果您通过 IDEA 工具栏上的“终止”按钮停止 jetty,锁定仍保留在缓存文件上。所以你需要通过任务停止jetty jettyStop。您还需要指定stopKeystopPort才能成功执行任务。