我在Visual Studio Team Services中构建MonoGame项目时遇到问题。构建解决方案时会引发错误。我进行了很多搜索,但未找到任何解决方案。这是错误:
ESA\ESA.csproj(138,11): Error MSB4226: The imported project "C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\MonoGame\v3.0\MonoGame.Content.Builder.targets" was not found. Also, tried to find "MonoGame\v3.0\MonoGame.Content.Builder.targets" in the fallback search path(s) for $(MSBuildExtensionsPath) - "C:\Program Files (x86)\MSBuild" . These search paths are defined in "C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\bin\msbuild.exe.Config". Confirm that the path in the <Import> declaration is correct, and that the file exists on disk in one of the search paths.
我已经导入了MonoGame块包,但始终无法正常工作。这是.csproject文件中的<import>标记:
<Import Project="$(MSBuildExtensionsPath)\MonoGame\v3.0\MonoGame.Content.Builder.targets" />
非常感谢您的回答!
您可以在安装了MonoGame的计算机上设置私有构建代理,然后使用该构建代理来构建项目。
另一方面,基于该线程(由于安装程序问题而无法创建持续集成环境),您可以使用NuGet软件包,通过这种方式,您需要修改项目文件以将导入路径<Import Project="$(MSBuildExtensionsPath)\MonoGame\v3.0\MonoGame.Content.Builder.targets" />
更改为实际的软件包路径。
您可以添加msbuild条件,以便在本地使用安装,而无需在构建服务器中使用Nuget。MSBuild条件
例如:
<Import Project="$(MSBuildExtensionsPath)\MonoGame\v3.0\MonoGame.Content.Builder.targets" Condition="Exists('$(MSBuildExtensionsPath)\MonoGame\v3.0\MonoGame.Content.Builder.targets')" />
<Import Project="{actual package path}\MonoGame.Content.Builder.targets" Condition="!Exists('$(MSBuildExtensionsPath)\MonoGame\v3.0\MonoGame.Content.Builder.targets')" />
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句