Firebase性能监视器导致“ D8:不支持的源文件类型”

时间:2019-06-06 15:53:50

标签: android performance plugins

我添加了

apply plugin: 'com.google.firebase.firebase-perf'

当我运行build脚本时,我得到了

  

/transforms/FirebasePerformancePlugin/dev/debug/174/module-info.class:   D8:不支持的源文件类型

这可能是什么问题?

我更新了所有插件,播放服务和Android Studio,但没有运气

5 个答案:

答案 0 :(得分:5)

我通过更新gradle版本来解决此问题

classpath'com.android.tools.build:gradle:3.5.3'

答案 1 :(得分:2)

关闭Firebase性能插件。
Android Studio 3.6 Canary 1也具有此issue
我没有找到发布项目的另一种方法。

答案 2 :(得分:1)

此问题已固定在Android Studio 3.5 Beta 2Android Studio 3.6 Canary 5之间,module-info.class也存在许多类似的问题。

要解决此问题,我不仅更新了Android Studio,还更新了gradle插件。

步骤是:

  1. 在稳定版本旁边安装新版本(您也可以配置当前版本以使用canary chanel的更新)

    More info here

    Download link(我下载了3.6 Canary 5)

  2. 安装新的Android Studio更新等级插件后:

    gradle/wrapper/gradle-wrapper.properties chande distributionUrl到

    distributionUrl=https\://services.gradle.org/distributions/gradle-5.5-all.zip

  3. 别忘了Build->Clean Project

答案 3 :(得分:1)

更新:Android Gradle插件3.5.0修复了此问题。请参见this issuethis one问题,两者均已修复。

(不幸的是,在我的项目中,this other issue仍然保留在3.5.3中。)


在更新(公司内部)库依赖关系后,我开始遇到相同的错误,但是即使恢复该更新后,我仍然不断得到该错误。很奇怪!

> Task :app:transformClassesAndResourcesWithR8ForBetaRelease FAILED
R8 is the new Android code shrinker. If you experience any issues, please file a bug at
https://issuetracker.google.com, using 'Shrinker (R8)' as component name. You can
disable R8 by updating gradle.properties with 'android.enableR8=false'.

.../transforms/FirebasePerformancePlugin/beta/release/66/module-info.class:
D8: Unsupported source file type 

我发现唯一有帮助的是按照Gradle构建输出中的说明进行操作,并临时切换回ProGuard ,方法如下:

android.enableR8=false

gradle.properties中。

答案 4 :(得分:0)

我通过3个步骤解决了这个问题:

1。更新“ distributionUrl = https://services.gradle.org/distributions/gradle-5.6.4-all.zip”

2。更新“类路径” com.android.tools.build:gradle:3.6.3”

3。更新Studio 3.6.3

以其他方式(我不喜欢)

//应用插件:“ com.google.firebase.firebase-perf”

... // classpath“ com.google.firebase:perf-plugin:1.3.1”