MSBUILD 不检测项目文件中的更改
MSBUILD doest not detect change in project files
我需要构建一个 C++ 库,并且需要从终端使用 msbuild。我按照Here in the docs.microsoft.com中的步骤进行了切入点,项目构建成功。
然后我将文件名从 main.h 更改为 main.hpp 并且还更改了项目文件中的名称 (.vcxproj) 然后 运行
msbuild /t:Clean
msbuild myproject.vcxproj /p:configuration=debug
它说找不到名为 "main.h" 的文件,但我已将 myproject.vcxproj 文件中所需的文件名更改为 "main.hpp",对应 main.h 的重命名至 main.hpp.
为什么还在找旧文件?
我认为你在重命名文件之前应该清理一下。有可能一些目标文件 *.obj 仍然指向旧文件,或者 visual studio 的一些其他临时文件指向旧文件名。
This issue seems to result from that you haven't changed the main.h to
main.hpp in main.cpp file.
您得到的错误是否类似于下面的图片?
根据错误信息我们可以发现这个错误来自于CIComplie目标。
并打开myproject.vcxproj文件,可以找到<ClCompile Include="main.cpp" />
.
这句话
现在很明显这个问题是由这个引起的,正如你提到的你已经更改了文件名并且在 .vcxproj 文件中做了同样的更改。但是您还没有在 main.cpp.
中进行更改
所以当这个目标开始编译时,它找不到main.h文件,它在main.cpp.
中找到了“#include "main.h"”这样的代码定义的文件
Changing the “#include "main.h" to “#include "main.hpp" can help.
您可以在此处分享任何更新或反馈。
我需要构建一个 C++ 库,并且需要从终端使用 msbuild。我按照Here in the docs.microsoft.com中的步骤进行了切入点,项目构建成功。
然后我将文件名从 main.h 更改为 main.hpp 并且还更改了项目文件中的名称 (.vcxproj) 然后 运行
msbuild /t:Clean
msbuild myproject.vcxproj /p:configuration=debug
它说找不到名为 "main.h" 的文件,但我已将 myproject.vcxproj 文件中所需的文件名更改为 "main.hpp",对应 main.h 的重命名至 main.hpp.
为什么还在找旧文件?
我认为你在重命名文件之前应该清理一下。有可能一些目标文件 *.obj 仍然指向旧文件,或者 visual studio 的一些其他临时文件指向旧文件名。
This issue seems to result from that you haven't changed the main.h to main.hpp in main.cpp file.
您得到的错误是否类似于下面的图片?
并打开myproject.vcxproj文件,可以找到<ClCompile Include="main.cpp" />
.
现在很明显这个问题是由这个引起的,正如你提到的你已经更改了文件名并且在 .vcxproj 文件中做了同样的更改。但是您还没有在 main.cpp.
中进行更改所以当这个目标开始编译时,它找不到main.h文件,它在main.cpp.
中找到了“#include "main.h"”这样的代码定义的文件Changing the “#include "main.h" to “#include "main.hpp" can help.
您可以在此处分享任何更新或反馈。