Mac 上 VSCode 中包含多个文件的 Swift 命令行程序

问题描述

我想在 Visual Studio Code 上运行一个包含多个类和多个文件的成熟的 Swift 命令行程序。我使用的是 Macbook Air macOS Big Sur v11.2

我已经从 this tutorial 设置了 VSCode。我能够运行单个文件 swift 程序,但是当我尝试在另一个文件(在同一目录/文件夹中)中创建新类时,它无法识别。参考截图:

vscode screenshot

考虑,在Xcode中类似于New project -> macOS -> command line tool。在那里我们可以有多个文件,我们可以在不同的文件中定义多个类,并且仍然在 main.swift 文件中继承或创建这些类的对象。

我很确定这在 VSCode 中也是可能的。可能我们只需要构建代码并进行配置。这就是我要找的。​​p>

this question 类似,但似乎没有经验的人愿意回答:/

ps- 我是 swift 和使用 VSCode 的新手。但我想使用 VSCode,而不是使用 xCode(12 GB 安装和 25 GB 占用存储仅用于少数命令行程序)。

解决方法

作为一个小提示,请考虑以下文件结构:

./Package.swift
./src
./src/classA.swift
./src/main.swift
  • src 中,您的源文件位于
  • Package.swift 是所谓的manifest 文件(见下文)

然后,您可以使用

构建您的项目
swift build

这将在 ./.build/debug/testCli

中创建可执行文件

清单

这是一个示例 Package.swift 文件。您可能还想查看官方 Package Description documentation

// swift-tools-version:5.1
import PackageDescription

let package = Package(name: "testPackage",products: [
    .executable(name: "testCli",targets: ["testCli"])
],targets: [
    .target(name: "testCli",path: "src"
    )
])