修復 MAUI androidx.collection.ArrayMapKt is defined multiple times 錯誤

當使用 CommunityToolkit.Maui 和 Microsoft.Maui.Controls 套件時,AndroidX 無法在 Maui 專案中編譯。並出現錯誤訊息:

MSBUILD : java error JAVA0000: 
      Error in /{User home}/.nuget/packages/xamarin.androidx.collection.jvm/1.4.0.4/buildTransitive/net8.0-android34.0/../../jar/androidx.collection.collect
      ion-jvm.jar:androidx/collection/ArraySetKt.class:
      Type androidx.collection.ArraySetKt is defined multiple times: /{User home}/.nuget/packages/xamarin.androidx.collection.jvm/1.4.0.4/buildTransitive/ne
      t8.0-android34.0/../../jar/androidx.collection.collection-jvm.jar:androidx/collection/ArraySetKt.class, /{User home}/.nuget/packages/xamarin.androidx.
      collection.ktx/1.2.0.9/buildTransitive/net6.0-android31.0/../../jar/androidx.collection.collection-ktx.jar:androidx/collection/ArraySetKt.class
      Compilation failed

快速簡單的處理方案,使用安裝 nuget 套件 xamarin.androidx.fragment.ktx。新增此套件後,這個錯誤就解決了。

或者手動可在專案的 .csproj 中加入此行
<PackageReference Condition=”( ‘$(TargetFramework)’ == ‘net8.0-android’ )” Include=”Xamarin.AndroidX.Fragment.Ktx” Version=”1.8.6″ />