VSCode for Swift:在非Mac环境下进行Swift编程

19次阅读

ubuntu 24.04上用vscode开发swift需四步:一、下载并配置Swift官方linux工具链;二、安装Swift与SourceKit-LSP扩展,设置sourcekit-lsp路径;三、安装LLDB 18及依赖,配置launch.json启用调试;四、可选docker容器方案,通过Remote-Containers接入swift:5.9镜像。

VSCode for Swift:在非Mac环境下进行Swift编程

如果您希望在非mac操作系统上使用VSCode进行Swift编程,但Swift官方工具链默认仅支持macOS,您需要借助第三方工具和配置来实现开发环境的搭建。以下是具体操作步骤:

本文运行环境:Dell XPS 13,Ubuntu 24.04

一、安装Swift官方Linux工具链

Swift开源版本已提供对Ubuntu等主流Linux发行版的原生支持,需从Swift官网下载对应架构的预编译二进制包并手动配置环境变量。

1、访问 https://www.swift.org/download/#releases 页面,找到最新稳定版的 Ubuntu 24.04 (x86_64)Ubuntu 24.04 (aarch64) 下载链接。

2、使用wget命令下载压缩包,例如:wget https://download.swift.org/swift-5.9-release/ubuntu2404/swift-5.9-RELEASE/swift-5.9-RELEASE-ubuntu24.04.tar.gz

3、解压至 /opt/swift 目录:sudo tar -xzf swift-5.9-RELEASE-ubuntu24.04.tar.gz -C /opt/swift –strip-components=1

4、将Swift可执行路径添加到系统PATH中,在 ~/.bashrc~/.zshrc 中追加:export PATH=”/opt/swift/usr/bin:$PATH”,然后运行 source ~/.bashrc 生效。

二、配置VSCode Swift扩展与工作区

VSCode本身不内置Swift支持,需通过语言服务器协议(LSP)集成Swift语法分析与智能提示能力,核心依赖Swift Language Server(SourceKit-LSP)。

1、在VSCode中安装扩展:Swift for VS Code(作者:Chunxu Wang)与 SourceKit-LSP(由Swift团队维护)。

2、确认 sourcekit-lsp 可执行文件存在:运行 which sourcekit-lsp,若无输出,则进入 /opt/swift/usr/bin 目录,检查是否存在该文件;如缺失,需重新下载含LSP组件的完整Swift包。

3、在VSCode用户设置中搜索 swift.path.sourceKitLSP,将其值设为 /opt/swift/usr/bin/sourcekit-lsp

4、新建文件夹作为Swift项目根目录,在其中运行 swift package init –type executable 初始化一个可构建的Swift项目。

三、启用Swift调试支持

要在VSCode中启动断点调试,必须配置LLDB调试器并确保其与Swift运行时兼容,Ubuntu系统需安装适配的LLDB版本及调试符号支持包。

1、安装LLDB 18:sudo apt install lldb-18,并创建软链接:sudo ln -sf /usr/bin/lldb-18 /usr/bin/lldb

2、安装调试依赖:sudo apt install libcurl4-openssl-dev libpython3.12-dev libicu-dev libsqlite3-dev

3、在项目根目录下创建 .vscode/launch.json 文件,内容包含以下配置段:

{“configurations”:[{“name”:”Swift Debug”,”type”:”lldb”,”request”:”launch”,”program”:”${workspaceFolder}/.build/debug/your-executable-name”,”args”:[],”cwd”:”${workspaceFolder}”}]}

4、确保可执行文件已构建完成,运行 swift build 后,再点击VSCode左侧调试图标启动调试会话。

四、使用Docker容器运行Swift环境

当本地系统依赖冲突或权限受限时,可通过Docker拉取官方Swift镜像,在隔离环境中运行编辑与编译流程,VSCode通过Remote-Containers插件直接接入容器内开发环境。

1、安装Docker Engine与 Remote-Containers 扩展(作者:microsoft)。

2、在项目根目录创建 .devcontainer/devcontainer.json,内容指定基础镜像:“image”: “swift:5.9”

3、在 devcontainer.json 中添加配置项:“customizations”: {“vscode”: {“extensions”: [“kyle-yu.vscode-swift”]}}

4、按 Ctrl+Shift+P 打开命令面板,输入并选择 Dev Containers: Reopen in Container,等待容器初始化完成。

5、容器内自动挂载当前工作区,终端中可直接运行 swift runswift test

text=ZqhQzanResources