我正在调试其他人的工作,解决方案非常庞大。当我尝试构建整个事物时,解决方案中的几个项目不会构建,只是跳过。在构建过程中查看输出窗口说:
1> ------ Skipped Rebuild All:项目:pr1lib ------
如何确定跳过这些构建的原因?我无法找到额外的输出。
这是VS2008,解决方案由c#和c ++代码组成。
答案 0 :(得分:77)
右键单击解决方案,选择“属性”,然后选择“配置属性”。在这里,您可以选择要构建的项目。
[修改强>]:
请参阅Kdt的评论:...当我查看配置属性时...项目构建目标已配置为“混合平台”,而解决方案设置为构建“任何CPU”。
*当我遇到这个问题时,主项目只有'任何CPU'并且它将子dll设置为'任何CPU',但是,我删除了该配置文件并只留下'x86'。仅为dll选择x86使其开始工作
[/编辑]
答案 1 :(得分:36)
我遇到了同样的问题 - “卸载项目”和“重装项目”解决了这个问题!
答案 2 :(得分:11)
正在跳过构建,重建和清理操作。卸载和重新加载没有帮助,也没有重启Visual Studio。
一旦我从解决方案中删除了项目并将其添加回来,就不再跳过它。要删除它,请在解决方案资源管理器中右键单击项目>删除>好。要将其添加回来,请在解决方案资源管理器中右键单击解决方案>添加>现有项目并选择您的项目
答案 3 :(得分:9)
如果配置是x64并且未安装x64编译器,它将跳过该项目。
答案 4 :(得分:8)
重新启动Visual Studio可以达到目的
答案 5 :(得分:5)
Visual Studio 2008,可能是因为没有安装64位编译器。
控制面板 - >程序和功能 - > Microsoft Visual Studio 2008专业版 - > [双击]
在Visual Studio对话框
上下一步 - >添加/删除功能 - > (下)Visual C ++ - > (选择)x64编译器和工具
答案 6 :(得分:3)
如果您有SP1,请在更改VS安装之前将其卸载。完成后,再次安装SP1。
答案 7 :(得分:3)
VS 2010中也存在问题;建议的解决方案:编辑构建配置,清理,更改/重新更改目标框架,不起作用。但卸载和重新加载项目确实如此。
答案 8 :(得分:2)
转到构建菜单并选择“配置管理器”。这将显示哪些项目配置为在您选择的配置中构建。
答案 9 :(得分:1)
我刚刚遇到了这个问题,并且能够通过删除最顶层文件夹中隐藏的 .vs 文件夹来解决它。重新启动 Visual Studio 后一切正常。
答案 10 :(得分:1)
答案 11 :(得分:1)
我的解决方案与前面提到的相同: 删除->添加现有项目
但是,该解决方案意味着项目之间的引用不存在
为避免重新添加引用:和,如果您使用的是版本控制系统(例如GIT或TFS或其他工具),则可以通过以下方式实现目标步骤:
确保在操作之前所有更改都已提交/签入
浏览所有项目,将其从解决方案中删除并添加现有项目
.sln文件已更改
保留新的.sln文件,但使用版本控制系统撤消对所有.cspoj文件的更改
答案 12 :(得分:1)
4。保存文件 5.open visual studio更好
答案 13 :(得分:1)
在这里的其他可能性中,我有一个很奇怪的东西可能值得记录。
我在解决方案中添加了Shared Project,并且在其他两个或三个项目中使用了代码。如您所知-共享项目只是代码,而不是传统意义上的项目。您不能“构建”共享项目,它只是将代码嵌入到其他项目中,然后在其中构建。
但是以某种方式我的解决方案文件已经更新,就好像共享项目是需要构建的属于自己的东西一样。我当时猜想,无论何时我尝试构建,而我都没有更改共享项目中的代码,那么它就提示“什么都没有改变,请跳过那些构建”
我在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
文件中删除了这四行,现在一切似乎又很开心了
答案 14 :(得分:1)
我也发生了类似的事情。我不确定是什么问题,但不会 Clean , Build , Rebuild 等。我在中进行操作Visual Studio 2017 ,并希望使用netstandard2.0
程序集。对我来说,问题在于项目类型不正确,也许我是从netcoreapp
类库开始的,类似的东西卡在 Solution 文件中,我不记得了。无论如何,我备份了项目,创建了一个新的netstandard
类库项目,并考虑了备份的位,然后为我修复了它。有人。
答案 15 :(得分:1)
右键单击解决方案资源管理器中的解决方案,然后单击菜单底部的“属性”。在属性窗口中,点击配置属性 - >左窗格中的配置,您将在右侧窗格中看到项目列表,确保在弹出窗口中选中了“构建”复选框。
答案 16 :(得分:1)
与VS2005遇到同样的问题,所有配置都是正确的。 它甚至跳过了Clean项目命令。
最后卸载/重新加载真的很神奇。
答案 17 :(得分:1)
遇到同样的问题,发现项目设置是针对Itanium CPU的,将其更改为Intel修复它。
答案 18 :(得分:1)
如果您的解决方案包含NuGet项目(* .nuproj)文件,请尝试卸载它,然后重建您的解决方案。
在上述任何一项工作完成后,这对我有用。
答案 19 :(得分:0)
i更新至15.9.11,...经过一些构建,同样的问题:大多数项目都被跳过(第二次构建没有问题)。就我而言,卸载/重新加载解决方案总是有帮助的,但是很快就会再次发生。
我不知道为什么...除了VS2017中的一个大错误
我检查了配置管理器,所有复选标记都设置为构建。
也许与nuget包有关,但这只是一个猜测
该解决方案只有c ++ / vcxproj,没有csproj。同时安装了64和32
答案 20 :(得分:0)
确保首先执行“干净”.. Visual Studio通常不会重新构建一个不过时的项目(就其而言)并且只会重新使用它已经存在的目标代码具有。
运行clean应清除所有以前编译的代码,VS不应跳过项目(假设配置管理器已选择构建项目...参见上一个答案)。
希望有所帮助。
答案 21 :(得分:0)
删除children
和.\obj
目录可以解决问题。
答案 22 :(得分:0)
右键单击解决方案->删除,然后添加现有项目,这对我有用。
答案 23 :(得分:0)
这是我在VS 2019中发生的,解决方案是仅重新启动Visual Studio。 我的构建配置从未修改过。
答案 24 :(得分:0)
它将跳过任何具有依赖项目而无法构建的项目的构建。
答案 25 :(得分:0)
问题:“重建,构建,清理”跳过了我的所有项目,除了其中两个项目。
不适用于我的解决方案:
解决方案配置设置符合预期,因此没有任何帮助。
卸载和重新加载均无效。
发生的原因:
之所以发生这种情况,是因为这两个项目的目标.NET框架较高(4.7),而其他项目则较低。最初弹出一个提示,要求我安装.NET 4.7,但事实证明,如果不重新启动计算机就无法识别它已安装。
可行的解决方案:
我建议安装最新的.NET Framework并重新启动计算机,以避免遇到进一步的问题。
答案 26 :(得分:0)
我发现,有时当你的目标平台设置为允许在你的解决方案和项目中说x86时,项目实际上并不总是选择它。
要仔细检查,请转到项目属性,看看是否可以在Build-> Platform设置中选择该平台,如果不能,则需要转到配置管理器并创建该配置。
答案 27 :(得分:0)
Visual Studio 2017
在配置管理器中添加配置
右键单击项目->仅项目->仅生成/仅重建/仅清理
如果其他所有设置都正确。
答案 28 :(得分:0)
我刚遇到这个麻烦:
已将VS 2017更新到最新版本15.9.11,我的项目很少更新到.net core 2.2。最初,我加载了所有尝试建筑/清洁/重建的项目,而所有内容都被跳过了。请按照以下步骤解决:
就是这样,一切都恢复了正常运转,我能够成功构建所有项目。
答案 29 :(得分:0)
我在新PC上遇到了一些Windows CE项目的问题。 “卸载项目”和“重新加载项目”似乎解决了这个问题,但实际上Visual Studio只是切换到了另一个平台并构建了它。
事实证明,虽然我的WinCE平台被显示为活动平台,但Visual Studio并没有“真正”看到它。解决方案是reinstall the WinCE SDK with administrator priveleges:
msiexec /log SDKInstallLog.txt /package <the path to your .msi file>
答案 30 :(得分:0)
我有类似的问题,我有一个项目由于某种原因无法加载到解决方案资源管理器中。当我加载该项目时,它就像一个魅力。
答案 31 :(得分:0)
我在Visual Studio 2017 15.9.4中遇到了这个问题,经过一段时间的搜索和查找,我发现在我的解决方案中,其中一个项目的.csproj文件在TFS中合并后遭到损坏。 (我可以通过从解决方案中卸载有问题的项目来构建其他项目)。 我解决问题的方法是,在合并前后比较了.csproj文件并进行了修复。通过修复,我的意思是由于我自己项目的类型是.netStandard,所以我删除了不必要的行,包括 Configuration PropertyGroup ,以及新.csproj文件中的所有其他内容,使其与以前的类似.netstandard样式的版本。
答案 32 :(得分:0)
如果您没有安装x64编译器,VS 2008将跳过x64目标。 VS 2008默认情况下不会。有点儿,事情。
答案 33 :(得分:0)
我更新了Visual Studio 2017的一个小更新,然后安装程序提醒我重新启动计算机,但我没有重新启动。在Visual Studio 2017中构建项目或解决方案时,我遇到了上述相同问题。更新可能是密钥,所以我重新启动计算机,我做到了。:>
答案 34 :(得分:0)
我从Telerik的反编译器生成项目后尝试重新编译它时遇到了类似的问题。每当我尝试重建它时,都会跳过该项目。尝试了很多上面的建议,但对我来说,它是在项目属性中选择的.NET Framework。
右键单击解决方案文件中的项目,选择属性,应用程序选项卡,将目标框架从4.0更改为3.5。
然后,重建,我得到了一堆程序集引用缺失错误,这是有道理的,因为我还没有添加对它们的引用。
答案 35 :(得分:-1)