运行时
dotnet publish "{projectFilePath}" --configuration Release --output "{outputPath}"
,构建运行,但中途冻结(如下所述)。
执行时也是如此
dotnet build
。
这个问题的不同寻常之处在于,VisualStudioIDE可以编译和运行应用程序,而不会出现任何问题或警告。
不幸的是,自上次稳定构建以来,对代码库进行了大量更改,因为只有在尝试部署时才检测到此问题。
有两点值得注意:
-
自上次稳定构建以来的一个变化是在与web应用程序相同的解决方案中添加了一个NUnit项目。此后,该项目已被卸载、删除和删除,应用程序中的所有引用也已被删除。
-
许多Nuget包也得到了更新,尽管这在从IDE运行实例时不会对应用程序产生负面影响。值得一提的是,有几个构建
警告
格式如下:
PATH\.csproj : warning NU1701: Package 'XAct.IO 1.1.17040.3290' was restored using '.NETFramework,Version=v4.6.1, .NETFramework,Version=v4.6.2, .NETFramework,Version=v4.7, .NETFramework,Version=v4.7.1, .NETFramework,Version=v4.7.2, .NETFramework,Version=v4.8, .NETFramework,Version=v4.8.1' instead of the project target framework 'net7.0'. This package may not be fully compatible with your project.
我已经用执行了命令
--verbosity diag
并观察到它被卡在无限循环中,但没有卡在任何特定点上。对于
build
和
publish
。
以下尝试未能解决问题:
-
删除了bin和obj文件夹,并清理和重建了解决方案。
-
清除了NuGet包,并重新加载和更新了它们。
-
以管理员身份重新启动Visual Studio。
-
在PowerShell和Nuget Package Manager控制台中执行了dotnet命令。
-
已重新启动计算机。
-
创建了一个新的解决方案并加载到web应用程序项目中。
-
将.csproj文件中的所有NuGet包版本恢复到上次稳定生成中指定的版本,并清理和重新生成解决方案。
我甚至不确定从哪里开始解决这个问题,因为应用程序在IDE中运行得很好,并且在执行dotnet命令或通过Visual Studio UI发布时会冻结。