Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/visual-studio-2010/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Visual studio 2010 任务在Msbuild中可以很好地执行,但在VisualStudio中不能_Visual Studio 2010_Msbuild - Fatal编程技术网

Visual studio 2010 任务在Msbuild中可以很好地执行,但在VisualStudio中不能

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会在修改之前启动,因此我的结果不是我花费的结果。另外,当我在构建控制台中查看时,一切似乎都正常 当一

与在命令行中执行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之间如何具有相同的行为


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,请检查它是否仍然正常工作