mono0926/LicensePlist
一款命令行工具,为 iOS 应用的依赖生成许可证列表,让它们显示在设置应用中。
- Star
- 2,537
- Fork
- 156
- 未关闭 Issue
- 37
- 最近提交
- 上个月
这是什么?
LicensePlist 是一款为 iOS 项目生成依赖许可证清单的命令行工具。它会扫描项目的依赖,为每个库生成包含许可证内容的 Plist 文件,支持 Carthage、CocoaPods、Swift Package Manager、Mintfile、Nestfile 和 mise,也可以通过 YAML 配置文件手动添加库。
生成的文件可放入 Settings.bundle,使许可证列表显示在 iOS 系统设置应用中。此外还可以输出 HTML、Markdown 或 CSV 格式的致谢文件。开发者可以排除或重命名条目、添加版本号,并在缺少许可证时让命令返回失败。
它通常在 Xcode 的 Run Script 阶段或作为构建工具插件运行,依赖未变化时会跳过处理,除非使用 --force 参数。可通过 CocoaPods、Homebrew、Mint 安装,或以 Swift 包的形式使用。
核心功能
- 01为 iOS 设置应用生成每个库的许可证 Plist 文件
- 02从 CocoaPods、Carthage 和 Swift Package Manager 收集依赖
- 03通过 YAML 配置文件添加手动库并排除指定条目
- 04支持导出 HTML、Markdown 或 CSV 格式的致谢文件
- 05可作为命令行工具、Xcode 构建工具插件或右键菜单命令运行
适用场景
- 在 iOS 应用的设置页面中加入开源许可证致谢列表
- 在 CI 或 Xcode 构建步骤中自动生成许可证清单
- 为 iOS 项目生成 Markdown 或 HTML 格式的第三方声明文件
快速上手
- 1
通过 Homebrew 安装
brew install licenseplist - 2
在包含 Cartfile 或 Pods 的目录中运行 license-plist
license-plist - 3
将生成的 com.mono0926.LicensePlist.Output 文件移入应用的 Settings.bundle
使用前须知
- 不支持将 Swift Package Manager 作为独立的安装方式,但该工具可以读取 SPM 依赖包。
- 仅适用于 iOS 应用项目。
收录于专题
标签
常见问题
- LicensePlist 是什么?
- 一款命令行工具,为 iOS 应用的依赖生成许可证列表,让它们显示在设置应用中。 LicensePlist 是一款为 iOS 项目生成依赖许可证清单的命令行工具。它会扫描项目的依赖,为每个库生成包含许可证内容的 Plist 文件,支持 Carthage、CocoaPods、Swift Package Manager、Mintfile、Nestfile 和 mise,也可以通过 YAML 配置文件手动添加库。
- LicensePlist 可以免费使用吗?用的什么许可证?
- LicensePlist 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
- LicensePlist 还在维护吗?
- 半年内有更新。LicensePlist 最近一次提交是在 2026年9月30日。
- LicensePlist 适合用来做什么?
- 在 iOS 应用的设置页面中加入开源许可证致谢列表 在 CI 或 Xcode 构建步骤中自动生成许可证清单 为 iOS 项目生成 Markdown 或 HTML 格式的第三方声明文件
- LicensePlist 怎么安装和运行?
- 通过 Homebrew 安装: brew install licenseplist 在包含 Cartfile 或 Pods 的目录中运行 license-plist: license-plist 将生成的 com.mono0926.LicensePlist.Output 文件移入应用的 Settings.bundle
- 在哪里获取 LicensePlist?
- 源代码和安装说明在 GitHub 上:https://github.com/mono0926/LicensePlist
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
跨平台的 Xcode 替代工具,可在 Linux、Windows 和 macOS 上用 SwiftPM 构建、签名并安装 iOS 应用。
用于检查 Swift 代码风格与编码规范的 linter,内置 200 多条规则,可按项目配置。
一款 macOS 应用,图形化控制 iOS、tvOS、watchOS 模拟器,底层封装 Apple 的 simctl 命令。