Visual studio 2010 任务在Msbuild中可以很好地执行,但在VisualStudio中不能
与在命令行中执行msbuild相比,VisualStudio中出现了一种奇怪的行为 解决方案s1包含3个项目p1、p2、pB。p1和p2是普通VS项目,而pb是我自己编写的xml msbuild文件。pB包含的任务的目的是修改源代码的某些部分 我确实配置了依赖项,以便p1和P2依赖于pB,以确保pB是第一个要执行的项目 在VisualStudio中按F6键进行编译时,文件会被修改,但似乎p1和p2会在修改之前启动,因此我的结果不是我花费的结果。另外,当我在构建控制台中查看时,一切似乎都正常 当一个用户通过msBuild s1启动编译时,一切都变得完美了 VS2010和msbuild之间如何具有相同的行为Visual studio 2010 任务在Msbuild中可以很好地执行,但在VisualStudio中不能,visual-studio-2010,msbuild,Visual Studio 2010,Msbuild,与在命令行中执行msbuild相比,VisualStudio中出现了一种奇怪的行为 解决方案s1包含3个项目p1、p2、pB。p1和p2是普通VS项目,而pb是我自己编写的xml msbuild文件。pB包含的任务的目的是修改源代码的某些部分 我确实配置了依赖项,以便p1和P2依赖于pB,以确保pB是第一个要执行的项目 在VisualStudio中按F6键进行编译时,文件会被修改,但似乎p1和p2会在修改之前启动,因此我的结果不是我花费的结果。另外,当我在构建控制台中查看时,一切似乎都正常 当一
Thx如果您在项目p1和p2的预构建之前在中注册pB项目
<Target Name="BeforeBuild">
<MSBuild Projects="pB.proj" Properties="Configuration=$(Configuration)" />
</Target>
您可以调用并传递所有需要的参数。此解决方案将在这两种环境下都能工作。每次构建VS解决方案时,它都会创建一个.sln.cache文件,该文件包含解决方案中的每个项目,是一个相当不错的csproj文件
因此,在生成过程中修改csproj文件对使用.sln.cache文件的当前生成没有任何影响。问题似乎是它没有运行,因为没有对p1的文件进行任何修改。。。我需要pB在任何时候执行VS请求构建…我的错误。它运行,但不考虑我对PB.proj所做的任何更改。是否有某种缓存我可以在某处取消?如果使用/maxcpucount:4运行msbuild,请检查它是否仍然正常工作