我需要实现Firebase推送通知,所以我将最新版本的包添加到我的Maui .net8.0项目中。以下是在 csproj 文件中添加的用于推送通知的包。当我升级到这些软件包的最新版本时,我收到与错误 JAVA0000 相关的错误。
<ItemGroup Condition="'$(TargetFramework)' == 'net8.0-android'">
<GoogleServicesJson Include="google-services.json" />
<PackageReference Include="Xamarin.Firebase.Dynamic.Links">
<Version>121.2.0.2</Version>
</PackageReference>
<PackageReference Include="Xamarin.Firebase.Messaging">
<Version>123.3.1.2</Version>
</PackageReference>
</ItemGroup>
这是我面临的错误>
Severity Code Description Project File Line Suppression State
Error JAVA0000 Error in C:\\Users\\shobana.nagaraj.nuget\\packages\\xamarin.androidx.collection.jvm\\1.3.0.2\\buildTransitive\\net7.0-android33.0....\\jar\\androidx.collection.collection-jvm.jar:androidx/collection/ArrayMapKt.class:
Type androidx.collection.ArrayMapKt is defined multiple times: C:\\Users\\shobana.nagaraj.nuget\\packages\\xamarin.androidx.collection.jvm\\1.3.0.2\\buildTransitive\\net7.0-android33.0....\\jar\\androidx.collection.collection-jvm.jar:androidx/collection/ArrayMapKt.class, C:\\Users\\shobana.nagaraj.nuget\\packages\\xamarin.androidx.collection.ktx\\1.2.0.9\\buildTransitive\\net6.0-android31.0....\\jar\\androidx.collection.collection-ktx.jar:androidx/collection/ArrayMapKt.class
Compilation failed
java.lang.RuntimeException: com.android.tools.r8.CompilationFailedException: Compilation failed to complete, origin: C:\\Users\\shobana.nagaraj.nuget\\packages\\xamarin.androidx.collection.jvm\\1.3.0.2\\buildTransitive\\net7.0-android33.0....\\jar\\androidx.collection.collection-jvm.jar
androidx/collection/ArrayMapKt.class
at com.android.tools.r8.utils.R0.a(R8_8.1.56_756d1f50f618dd1c39c000f11defb367a21e9e866e3401b884be16c0950f6f79:126)
at com.android.tools.r8.D8.main(R8_8.1.56_756d1f50f618dd1c39c000f11defb367a21e9e866e3401b884be16c0950f6f79:5)
Caused by: com.android.tools.r8.CompilationFailedException: Compilation failed to complete, origin: C:\\Users\\shobana.nagaraj.nuget\\packages\\xamarin.androidx.collection.jvm\\1.3.0.2\\buildTransitive\\net7.0-android33.0....\\jar\\androidx.collection.collection-jvm.jar:androidx/collection/ArrayMapKt.class
at Version.fakeStackEntry(Version_8.1.56.java:0)
at com.android.tools.r8.M.a(R8_8.1.56_756d1f50f618dd1c39c000f11defb367a21e9e866e3401b884be16c0950f6f79:5)
at com.android.tools.r8.utils.R0.a(R8_8.1.56_756d1f50f618dd1c39c000f11defb367a21e9e866e3401b884be16c0950f6f79:81)
at com.android.tools.r8.utils.R0.a(R8_8.1.56_756d1f50f618dd1c39c000f11defb367a21e9e866e3401b884be16c0950f6f79:32)
at com.android.tools.r8.utils.R0.a(R8_8.1.56_756d1f50f618dd1c39c000f11defb367a21e9e866e3401b884be16c0950f6f79:31)
at com.android.tools.r8.utils.R0.b(R8_8.1.56_756d1f50f618dd1c39c000f11defb367a21e9e866e3401b884be16c0950f6f79:2)
at com.android.tools.r8.D8.a(R8_8.1.56_756d1f50f618dd1c39c000f11defb367a21e9e866e3401b884be16c0950f6f79:26)
at com.android.tools.r8.D8.b(R8_8.1.56_756d1f50f618dd1c39c000f11defb367a21e9e866e3401b884be16c0950f6f79:13)
at com.android.tools.r8.D8.a(R8_8.1.56_756d1f50f618dd1c39c000f11defb367a21e9e866e3401b884be16c0950f6f79:24)
at com.android.tools.r8.utils.R0.a(R8_8.1.56_756d1f50f618dd1c39c000f11defb367a21e9e866e3401b884be16c0950f6f79:113)
... 1 more
Caused by: com.android.tools.r8.utils.b: Type androidx.collection.ArrayMapKt is defined multiple times: C:\\Users\\shobana.nagaraj.nuget\\packages\\xamarin.androidx.collection.jvm\\1.3.0.2\\buildTransitive\\net7.0-android33.0....\\jar\\androidx.collection.collection-jvm.jar:androidx/collection/ArrayMapKt.class, C:\\Users\\shobana.nagaraj.nuget\\packages\\xamarin.androidx.collection.ktx\\1.2.0.9\\buildTransitive\\net6.0-android31.0....\\jar\\androidx.collection.collection-ktx.jar:androidx/collection/ArrayMapKt.class
at com.android.tools.r8.utils.O2.a(R8_8.1.56_756d1f50f618dd1c39c000f11defb367a21e9e866e3401b884be16c0950f6f79:21)
at com.android.tools.r8.utils.O2.a(R8_8.1.56_756d1f50f618dd1c39c000f11defb367a21e9e866e3401b884be16c0950f6f79:26)
at com.android.tools.r8.utils.A2.a(R8_8.1.56_756d1f50f618dd1c39c000f11defb367a21e9e866e3401b884be16c0950f6f79:44)
at com.android.tools.r8.utils.A2.a(R8_8.1.56_756d1f50f618dd1c39c000f11defb367a21e9e866e3401b884be16c0950f6f79:10)
at java.base/java.util.concurrent.ConcurrentHashMap.merge(ConcurrentHashMap.java:2056)
at com.android.tools.r8.utils.A2.a(R8_8.1.56_756d1f50f618dd1c39c000f11defb367a21e9e866e3401b884be16c0950f6f79:6)
at com.android.tools.r8.graph.b4$a.e(R8_8.1.56_756d1f50f618dd1c39c000f11defb367a21e9e866e3401b884be16c0950f6f79:7)
at com.android.tools.r8.dex.c.a(R8_8.1.56_756d1f50f618dd1c39c000f11defb367a21e9e866e3401b884be16c0950f6f79:58)
at com.android.tools.r8.dex.c.a(R8_8.1.56_756d1f50f618dd1c39c000f11defb367a21e9e866e3401b884be16c0950f6f79:9)
at com.android.tools.r8.dex.c.a(R8_8.1.56_756d1f50f618dd1c39c000f11defb367a21e9e866e3401b884be16c0950f6f79:8)
at com.android.tools.r8.D8.a(R8_8.1.56_756d1f50f618dd1c39c000f11defb367a21e9e866e3401b884be16c0950f6f79:29)
at com.android.tools.r8.D8.d(R8_8.1.56_756d1f50f618dd1c39c000f11defb367a21e9e866e3401b884be16c0950f6f79:17)
at com.android.tools.r8.D8.c(R8_8.1.56_756d1f50f618dd1c39c000f11defb367a21e9e866e3401b884be16c0950f6f79:1)
at com.android.tools.r8.utils.R0.a(R8_8.1.56_756d1f50f618dd1c39c000f11defb367a21e9e866e3401b884be16c0950f6f79:28)
... 6 more
FirebaseMauiApp1 1
我参考了更多文档和讨论,他们建议添加其他包
"Xamarin.Build.Download"
和<Package Reference Include="Xamarin.AndroidX.Fragment.Ktx" Version="1.6.2.2" />
但我仍然面临同样的问题。另外,我尝试使用降级版本,它对我来说很有效,但我需要使用最新版本而不使用任何其他包来实现 firebase 推送通知。
我不知道为什么它会导致错误,即使我没有添加“android collection .jvm”包。 请帮助我摆脱这个问题。感谢您的支持并提前致谢。
尝试添加包:
<PackageReference Include="Xamarin.AndroidX.Collection.Jvm" Version="1.4.0.1" />
在此处查看更多信息:https://github.com/xamarin/GooglePlayServicesComponents/issues/852当包与隐式引入的依赖项不完全同步时,此问题时常会发生。