【问题标题】:Gradle Copy task does not copy filesGradle Copy 任务不复制文件
【发布时间】:2016-07-17 19:43:26
【问题描述】:

我有以下任务将文件从我的 android 项目资源文件复制到单元测试中 ClassLoader 实例可访问的不同路径。

task copyResDirectoryToClasses(type: Copy){
    println 'COPYINGCOPYINGCOPYING!!!!!!!!!!!!!!!!!!!!'
    println "$projectDir/src/test/java/com/textmeinc/topmeup/resources/"
    println "$buildDir/intermediates/classes/test/staging/debug/"

    from "$projectDir/src/test/java/com/textmeinc/topmeup/resources/"
    into  "$buildDir/intermediates/classes/test/staging/debug/"
}

assembleDebug.dependsOn(copyResDirectoryToClasses)

我看到任务在我的 gradle 控制台中运行。

Parallel execution with configuration on demand is an incubating feature.
COPYINGCOPYINGCOPYING!!!!!!!!!!!!!!!!!!!!
/Users/tylerpfaff/Documents/Development/topmeup-android/app/src/test/java/com/textmeinc/topmeup/resources/
/Users/tylerpfaff/Documents/Development/topmeup-android/app/build/intermediates/classes/test/staging/debug/

但是,不会传输任何文件。如果我在终端中手动移动它们,我的测试在我的 mock.json 文件中运行良好。为什么副本不起作用?

这是我用来手动复制文件的命令。

cp /Users/tylerpfaff/Documents/Development/topmeup-android/app/src/test/java/com/textmeinc/topmeup/resources/mock.json /Users/tylerpfaff/Documents/Development/topmeup-android/app/build/intermediates/classes/test/staging/debug/

【问题讨论】:

  • 你在终端复制到classes/test/staging/debug/,但在gradle任务中复制到classes/staging/debug/
  • 查看我的编辑,仍然无法正常工作:(@LawrenceChoy
  • 您可以尝试在任务的from 部分指定文件名(mock.json)吗?
  • @LawrenceChoy 没用 :(
  • 你有可能遇到stackoverflow.com/questions/40505629/… 吗?

标签: android unit-testing gradle mockito powermock


【解决方案1】:

我认为插件中存在错误。我自己也遇到了这个。让任务作为“dependsOn”运行失败。但是,如果我在 Android Studio 中打开 Gradle 选项卡并从那里手动运行任务,则会复制文件。命令行gradlew :subproject:copytask 也是如此。我将尝试在一个独立的项目中复制它,如果可以的话,我会为它提交一个错误报告(并将链接放在这里)。与此同时,手动运行该 gradle 任务是我唯一的解决方案。

【讨论】:

  • 感谢您的研究!这太烦人了。
  • 你有这方面的错误报告吗?
  • @desgraci 否定,已经有一段时间了,但据我回忆,我无法在独立项目中复制它以用于文档目的。我想说它最终确实在未来的更新中得到了解决,但不久前又一次,所以我可以确定什么时候。
【解决方案2】:

this documentation page 顶部的示例使用相对于projectDir 的路径

尝试将您的 from 和 into 路径替换为:

from 'app/src/test/java/com/textmeinc/topmeup/resources'
into 'build/intermediates/classes/test/staging/debug'

【讨论】:

    猜你喜欢
    • 2020-10-06
    • 1970-01-01
    • 1970-01-01
    • 2016-07-04
    • 1970-01-01
    • 1970-01-01
    • 2014-06-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多