簡體   English   中英

錯誤 MSB4025。 無法加載項目文件。 根級別的數據無效

[英]Error MSB4025. The project file could not be loaded. Data at the root level is invalid

我基於 .net 核心 2.1 創建了一個新的 NUnit 項目。

當我在 windows 機器上運行命令do.net test project1.dll然后它工作正常但是當我試圖在 red hat linux 機器(rhel 8)中運行相同的命令時,它給出錯誤“項目文件無法已加載。根級別的數據無效。第 1 行,position 1 "。 我在 inte.net 中查看了您需要更新 SDK 的解決方案,但我只想使用 do.net core 2.1,但我找不到任何命令來在 linux 中安裝更高版本的 do.net core 2.1。

請讓我知道是否有解決此問題的首選解決方案。 下面是我的項目文件。

<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <TargetFramework>netcoreapp2.1</TargetFramework>
    <IsPackable>false</IsPackable>
  </PropertyGroup>
  <ItemGroup>
    <PackageReference Include="NUnit" Version="3.12.0" />
    <PackageReference Include="NUnit3TestAdapter" Version="3.16.1" />
    <PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.5.0" />
  </ItemGroup>
</Project>

以下是 linux 上的 do.net --info 命令給出的有關 SDK 的信息。

.NET Core SDK (reflecting any global.json):
 Version:   2.1.518
 Commit:    c9b5af2ec4

Runtime Environment:
 OS Name:     rhel
 OS Version:  8
 OS Platform: Linux
 RID:         rhel.8-x64
 Base Path:   /usr/lib64/dotnet/sdk/2.1.518/

Host (useful for support):
 Version: 2.1.22
 Commit:  23677d3ee7

.NET Core SDKs installed:
  2.1.518 [/usr/lib64/dotnet/sdk]

.NET Core runtimes installed:
Microsoft.NETCore.App 2.1.22 [/usr/lib64/dotnet/shared/Microsoft.NETCore.App]

注意:我不想使用 csproj 文件運行測試命令。 我要求僅使用 dll 運行 do.net test 命令。

您可能正在尋找dotnet vstest命令: 文檔

你可以這樣使用它: dotnet vstest project1.dll

相信清除所有 Nuget 包然后恢復 .sln 將解決它。

要清除所有 Nuget 包,go 到工具 -> 選項在此處輸入圖像描述

要還原解決方案,請右鍵單擊 .sln,然后還原。 在此處輸入圖像描述

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM