我正在调试其他人的工作,解决方案非常大。当我尝试构建整个项目时,解决方案中的几个项目不会构建,而只是跳过。在构建过程中查看输出窗口显示:
1> ------跳过全部重建:项目:pr1lib ------
如何确定为什么跳过了这些构建?我找不到其他输出。
这与VS2008一起使用,解决方案由c#和c ++代码组成。
我正在调试其他人的工作,解决方案非常大。当我尝试构建整个项目时,解决方案中的几个项目不会构建,而只是跳过。在构建过程中查看输出窗口显示:
1> ------跳过全部重建:项目:pr1lib ------
如何确定为什么跳过了这些构建?我找不到其他输出。
这与VS2008一起使用,解决方案由c#和c ++代码组成。
/fl
到构建设置以获取包含原因的msbuild.log文件。例如:skipped, due to false condition; ( ('$(Configuration)' == 'Release') and ('$(Platform)' == 'Any CPU') ) was evaluated as ( ('Debug' == 'Release') and ('AnyCPU' == 'Any CPU') ).
Answers:
右键单击解决方案,选择“属性”,然后选择“配置属性”。在这里,您可以选择要构建的项目。
[ 编辑 ]:
参见Kdt的评论:...当我查看配置属性时...在将解决方案设置为构建“任何CPU”的同时,将项目构建目标配置为“混合平台”。
*当我遇到此问题时,主项目只有“ Any CPU”,并且它也将子dll设置为“ any CPU”,但是,我删除了该配置文件,仅保留了“ x86”。只为dll选择x86使其开始工作
[/ edit]
{784BDC39-5783-4128-956E-99EA062FA8FB}.Debug|AnyCPU.ActiveCfg = Debug|AnyCPU
变为{784BDC39-5783-4128-956E-99EA062FA8FB}.Debug|AnyCPU.ActiveCfg = Debug|Any CPU
。唯一的区别是该行末尾的“ Any”和“ CPU”之间增加了空间。
如果配置为x64,但未安装x64编译器,则会跳过该项目。
重新启动Visual Studio可以解决问题
我也发生了类似的事情。我不确定问题出在哪里,但无法清理,构建,重建等。我在Visual Studio 2017中进行操作,并需要一个netstandard2.0
程序集。对我来说,问题是项目类型不正确,也许我是从netcoreapp
类库开始的,类似这样,卡在解决方案文件中,我不记得了。无论如何,我备份了该项目,创建了一个新的netstandard
类库项目,并考虑了备份的位,然后为我修复了它。有人。
我有一个怪异的东西,可能值得在这里记录其他可能性。
我在解决方案中添加了一个共享项目,其中的代码已在其他两个或三个项目中使用。如您所知-共享项目只是代码,而不是传统意义上的项目。您不能“构建”共享项目,只是将代码嵌入到其他项目中,然后在其中构建。
但是我的解决方案文件已经以某种方式进行了更新,就好像共享项目是需要构建的东西一样。我当时猜想,无论何时我尝试构建,而我都没有更改共享项目中的代码,那么它就表示“什么都没有改变,请跳过那些构建”
我在solution.sln
文件中找到了共享项目,例如:
Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Api.Common", "Api.Common\Api.Common.shproj", "{EC580471-D78A-4509-AC46-BD565553AD60}"
..这很好。不好的是,这个项目也出现在 GlobalSection(ProjectConfigurationPlatforms) = postSolution
这样的地方:
{EC580471-D78A-4509-AC46-BD565553AD60}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{EC580471-D78A-4509-AC46-BD565553AD60}.Debug|Any CPU.Build.0 = Debug|Any CPU
{EC580471-D78A-4509-AC46-BD565553AD60}.Release|Any CPU.ActiveCfg = Release|Any CPU
{EC580471-D78A-4509-AC46-BD565553AD60}.Release|Any CPU.Build.0 = Release|Any CPU
我从.sln
文件中删除了这四行,现在事情似乎又高兴了
我在新PC上的某些Windows CE项目遇到了这个问题。“卸载项目”和“重新加载项目”似乎可以解决该问题,但实际上Visual Studio只是切换到了另一个平台并构建了该平台。
事实证明,尽管我的WinCE平台显示为活动平台,但Visual Studio并未“真正”看到它。解决方案是使用管理员权限重新安装WinCE SDK:
msiexec /log SDKInstallLog.txt /package <the path to your .msi file>
视觉工作室2017
在配置管理器中添加配置后
右键单击项目->仅项目->仅生成/仅重建/仅清理
如果所有其他设置都正确。
问题:重建,构建,清理正在跳过我的所有项目,除了其中两个项目。
不适合我的解决方案:
解决方案配置设置符合预期,因此没有任何帮助。
卸载和重新加载均无效。
发生原因:
之所以发生这种情况,是因为这两个项目的目标.NET框架较高(4.7),而其他项目则较低。最初弹出一个提示,要求我安装.NET 4.7,但事实证明,如果不重新启动计算机就无法识别它已安装。
有效的解决方案:
我建议安装最新的.NET Framework并重新启动计算机,以避免遇到其他问题。
Build > Configuration Manager: check as needed