所在的位置: C++ >> C++前景 >> VisualStudio现已支持C开

VisualStudio现已支持C开

今天我们很高兴与你分享一则消息:我们在VisualStudio.4中为使用了CMakePresets的C++工程加入了开发容器(DevContainers)支持。

容器是打包所有组件以运行应用程序的好方法。通过Dockerfile捕获所有先决条件,以便在部署和运行容器的任何地方都有一致的运行时环境,DevContainers扩展了这个概念,以捕获在容器中开发和构建应用程序所需的一切。一段时间以来,我们一直观察到容器在C++社区中变得越来越流行,因为它提供了可重现的构建环境。

VisualStudioCode已经支持DevContainers有一段时间了。从VisualStudio.4开始,你现在也可以将开发容器用于你的C++工程。

尝试一下先

你需要在Windows上安装DockerDesktop才能使用此功能。这是使用C++工作负载进行Linux和嵌入式开发的一部分,因此请确保在你的安装中选择它。

我们为使用CMakePresets的工程启用了此功能。你可以克隆此示例以开始使用。

此工程与VisualStudio中的FileNewCMakeProject相同,但有一点不同。还有一个额外的文件夹.devcontainer包含Dockerfile和devcontainer.json,它们共同定义了要启动的开发容器。

在VisualStudio中打开此文件夹时,系统会提示你在容器中重新打开该文件夹。

在容器启动时首次使用时,会下载支持映像。你可以在新的DevContainers输出窗口中查看启动进度。

启动完成后,CMake缓存生成开始,完成后你就可以正常编辑和调试了。

你还可以使用工具栏中的TargetSystem下拉菜单在DevContainer和其他选项之间切换。

设置选项

开发容器在工具选项下有几个选项。最重要的是,你可以控制是否提示在容器中重新打开。你还可以将远程主机设置为运行容器的位置,远程主机必须运行docker服务。

一些额外信息

该功能底层上使用了Linux容器。我们不支持具有这种机制的Windows容器,因此这与使用MSVC的传统WindowsC++开发无关。旨在用于跨平台开发。

VisualStudioCode的后端服务在DevContainer中运行,VisualStudio并非如此。VisualStudio管理它在你工作时使用的开发容器的生命周期,但它以与其他Linux或WSL目标类似的方式将它们视为远程目标。devcontainer.json配置文件可能包含一些与VisualStudio无关的VSCode特定信息,例如所需的扩展。VisualStudio会忽略这些内容,因此预计任何一种环境都会使用通用的DevContainer定义。

不要在VisualStudio和VSCode中同时打开同一个文件夹。这将导致它们连接到同一个容器,这将导致在两个上下文中运行的CMake与同一个文件夹发生冲突。

总结

万物皆周期,万物皆可容器化。它(你来定义它是什么)是个框,啥都可以装。

最后

MicrosoftVisualC++团队的博客是我非常喜欢的博客之一,里面有很多关于VisualC++的知识和最新开发进展。大浪淘沙,如果你对VisualC++这门古老的技术还是那么感兴趣,则可以经常去他们那(或者我这)逛逛。本文来自:《DevContainersforC++inVisualStudio》




转载请注明:http://www.aierlanlan.com/cyrz/5665.html

  • 上一篇文章:
  •   
  • 下一篇文章: