Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W tym artykule opisano kod błędu MSB3644.
Tekst wiadomości
MSB3644: The reference assemblies for 'value' were not found. To resolve this, install the Developer Pack (SDK/Targeting Pack) for this framework version or retarget your application. You can download .NET Framework Developer Packs at https://aka.ms/msbuild/developerpacks
Opis
Ten błąd występuje, gdy zestawy odwołań platformy .NET nie są znajdowane dla wersji platformy .NET, która żąda projektu.
Ten błąd może wystąpić, jeśli projekt zażąda wersji zestawu, która nie została rozpoznana lub zainstalowana. Błąd występuje również, gdy folder zestawów odwołań dla wymaganej wersji platformy .NET jest uszkodzony lub nie istnieje.
Rezolucja
Sprawdź, czy projekt odwołuje się do pakietu NuGet Microsoft.NETFramework.ReferenceAssemblies . Aby uzyskać więcej informacji, zobacz pakiety NuGet dla .NET Framework.
Identyfikator i wersja struktury plików projektu
Sprawdź plik projektu pod kątem błędów pisowni lub literówek w właściwościach TargetFramework, TargetFrameworks, TargetFrameworkIdentifier lub TargetFrameworkVersion.
Na przykład następujący kod w pliku projektu powoduje błąd MSB3644:
<PropertyGroup Condition="'$(TargetFrameworkIdentifier)' == ''">
<TargetFrameworkIdentifier>.NETCORAPP</TargetFrameworkIdentifier>
<TargetFrameworkVersion>3.1</TargetFrameworkVersion>
</PropertyGroup>
Wartość dla właściwości TargetFrameworkIdentifier jest błędnie przeliterowana. Poprawna wartość to .NETCOREAPP z brakującym E, jak w CORE.
Podczas określania wartości dla wielu platform docelowych przy użyciu właściwości TargetFrameworks, należy rozdzielić wartości średnikiem (;). Jeśli używasz nieprawidłowego ogranicznika, takiego jak przecinek (,), system generuje błąd MSB3644.
Oto przykład poprawnej składni:
<PropertyGroup>
<TargetFrameworks>net6.0;net5.0;netcoreapp3.1</TargetFrameworks>
</PropertyGroup>
Folder zestawów odwołań
Zanotuj identyfikator struktury i wersję żądaną we właściwościach TargetFramework, TargetFrameworkIdentifieri TargetFrameworkVersion poszukaj folderu zestawu referencyjnego dla tej wersji na dysku lokalnym.
W systemie Windows 32-bitowe zestawy odwołań dla platformy .NET Core powinny znajdować się w folderze C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETCore. W przypadku wersji 64-bitowej foldery zestawów odwołań programu .NET Framework powinny znajdować się w ścieżce C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework.
Jeśli folder wersji, której potrzebuje projekt, nie jest obecny lub jest uszkodzony, może być konieczne zainstalowanie lub ponowne zainstalowanie wersji zestawu. Wymaganą wersję można zainstalować na stronie Pobieranie .NET. Aby uzyskać więcej informacji, zobacz Zestawy referencyjne.
Odnosi się do
Wszystkie wersje programu MSBuild