AgoraIO-Extensions / AgoraIO-Extensions/Agora-C_Sharp-SDK

Publish conflicts when using agora_rtc_sdk with .NET 9 - Multiple duplicate files with same relative path

Ouverte
#520 1 commentaire 0 réactions 0 personnes assignées Voir sur GitHub
Langage dominant
C#
Étoiles
34
Forks
13
Métriques de merge des PR
Aucune PR mergée en 30 j

Description

### Issue Summary
When attempting to publish a .NET 9 WPF application that uses the `agora_rtc_sdk` NuGet package (version 4.2.6.19-alpha.1), the publish process fails due to duplicate file conflicts.

### Error Message
```
Found multiple publish output files with the same relative path:
C:\Users\{User}\.nuget\packages\agora_rtc_sdk\4.2.6.19-alpha.1\build\x64\net40\agorartc.dll,
C:\Users\{User}\.nuget\packages\agora_rtc_sdk\4.2.6.19-alpha.1\build\x64\netcoreapp20\agorartc.dll,
C:\Users\{User}\.nuget\packages\agora_rtc_sdk\4.2.6.19-alpha.1\build\x64\net40\agorartc.pdb,
C:\Users\{User}\.nuget\packages\agora_rtc_sdk\4.2.6.19-alpha.1\build\x64\netcoreapp20\agorartc.pdb
```

### Root Cause
The NuGet package includes both .NET Framework 4.0 (`net40`) and .NET Core 2.0 (`netcoreapp20`) versions of the same files (`agorartc.dll` and `agorartc.pdb`). When publishing a .NET 9 application, both versions are included in the publish output, causing filename conflicts.

### Environment
- **Target Framework**: .NET 9 (net9.0-windows)
- **Project Type**: WPF Application
- **NuGet Package Version**: 4.2.6.19-alpha.1
- **Build Action**: Folder Publish
- **OS**: Windows

### Current Workaround
We've implemented a custom MSBuild target to exclude the .NET Framework 4.0 versions:

```xml



```

### Expected Behavior
The publish process should automatically select the appropriate version of the native libraries based on the target framework without requiring manual intervention or custom MSBuild targets.

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Évaluation

Cette issue n'a pas encore été évaluée.

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.