由于临时文件创建,使用Ajc的渐变构建失败



我的项目与Gradle有一个有趣的问题。当从Intellij13(windows或linux)内部运行"gradlebuild"时,我得到以下错误消息:

10:05:48 PM: Executing external task 'build'...
:processResources UP-TO-DATE
:compileAspect FAILED
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':compileAspect'.
> Error creating temporary file
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
BUILD FAILED
Total time: 7.434 secs
Access is denied
10:05:56 PM: External task execution finished 'build'.

从这里开始,我在这里运行了一个完整的调试:Pastebin

这表明它在AjcTask.java文件中失败,如下所示:

1993 tmpFile=File.createTempFile("argfile",",userDir)

可能与GRADLE-1400有关,后者适用于旧版本,但尚未解决。在linux上,如果我cd到项目目录,我可以在第一次之后毫无问题地运行"gradle-build",然后我也可以从Intellij运行它,没有问题。

也许环境变化以某种方式得到了核武器?

它看起来像GRADLE-2532。

在您的情况下,user.dir属性默认为C:Program Files (x86)JetBrainsIntelliJ IDEA 13.1.1jrejrebin,这会导致Access Denied错误。

在IDEA 13.1.2和以前的版本中,启用"使用可自定义渐变包装器"选项应该会有所帮助。这将把user.dir设置为项目根目录。

在IDEA 13.1.3和更高版本中,有不同的解决方案可用,请查看此注释。

最新更新