You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Swift Argument Parser创建命令行工具的问题及简化诉求

如何无需手动编写Package.swift创建带Swift Argument Parser的命令行工具?

遇到的问题

尝试了两种创建基于Swift Argument Parser的命令行工具的方法,均失败:

方法一:SPM初始化后通过Xcode添加依赖

  • 创建项目文件夹
  • 终端执行命令:
    • cd 目标文件夹
    • swift package init --type executable
    • xed Package.swift
  • 问题:通过Xcode「File>添加包依赖」功能添加swift-argument-parser时,「复制依赖」按钮无响应。

方法二:Xcode新建命令行工具项目

  • 在Xcode中选择「File>新建项目」,创建Mac OS命令行工具
  • 选择「File>添加包依赖」
  • 问题:运行时提示「Library not loaded: @rpath/ArgumentParser.framework/Versions/A/ArgumentParser」,替换main.swift为带@main和ParsableCommand的代码、清理构建文件夹均无效。

目前仅能通过手动编辑Package.swift添加依赖实现功能,但不熟悉SPM,调试语法耗时且充满挫败感,希望找到无需手动编写Package.swift、一键式的简单操作步骤。

简化操作步骤

方案1:用Xcode直接创建SPM可执行项目(推荐)

  1. 打开Xcode,选择「File > New > Project」
  2. 在左侧模板列表中选择「macOS」分类下的「Swift Package」,点击「Next」
  3. 填写项目名称,勾选「Create executable product」选项,选择保存路径后点击「Create」
  4. 在Xcode左侧导航栏选中项目根节点(对应Package.swift),切换到「Package Dependencies」标签页
  5. 点击左下角「+」按钮,在搜索框输入https://github.com/apple/swift-argument-parser,选择官方包后点击「Add Package」
  6. 在弹出的依赖分配窗口中,确保你的可执行目标(与项目同名的target)被勾选,点击「Add Package」
  7. 直接在Sources/[你的项目名]/main.swift中编写带@main和ParsableCommand结构的代码,点击运行即可正常构建。

方案2:修复Xcode命令行工具项目的依赖问题

如果偏好使用Xcode原生命令行工具模板:

  1. 新建MacOS命令行工具项目后,通过「File>添加包依赖」搜索并添加swift-argument-parser
  2. 选中项目根目录,切换到「Build Phases」标签页
  3. 在「Link Binary With Libraries」模块点击「+」,找到并添加ArgumentParser.framework
  4. 同样在「Embed Frameworks」模块添加ArgumentParser.framework,设置「Destination」为「Frameworks」,勾选「Copy only when installing」
  5. 替换main.swift为符合要求的代码,清理构建文件夹后重新运行即可。

内容的提问来源于stack exchange,提问作者Duncan C

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.28 19:42:29