简介
我最初对此很感兴趣,因此决定在计算机上安装Mockolo。
什么是"薄荷"?
一种用于管理Swift命令行工具的安装和执行的工具。
如果您将其视为Bundler的Swift版本,则很容易理解。
好处
基本上,这与使用Bundler管理Ruby库的优点相同。
- 在项目中轻松对齐Swift命令行工具的版本
- 您可以为每个项目使用不同版本的Swift命令行工具
环境
- 作业系统:macOS Catalina 10.15
- 薄荷:0.13.0
设定
造币厂安装
从Homebrew安装。
1 | $ brew install mint |
请参阅官方文档以与Make或Swift PM一起安装。
https://github.com/yonaskolb/Mint#installing
薄荷版检查
检查Mint版本。
1 2 | $ mint version Version: 0.13.0 |
操作方法
创建一个Mintfile
创建一个名为
您可以在不创建Mintfile的情况下管理软件包,但是如果您希望在项目中拥有相同版本的软件包,则Mintfile很容易。
薄荷文件
1 2 |
以
软件包安装
通过执行
1 | $ mint bootstrap |
使用
当软件包安装失败时,最好附上它。
已安装的软件包被跳过,因此您可以编辑
附录
https://github.com/yonaskolb/Mint/releases/tag/0.16.0
如果指定
此选项应在CI期间添加。
已安装软件包的列表
您可以通过执行
1 2 3 4 5 6 | $ mint list ?? Installed mint packages: mockolo - 1.1.1 SwiftLint - 0.38.0 |
执行软件包
您可以执行
1 | $ mint run {パッケージ名} {コマンド} |
示例
1 2 3 4 5 | $ mint run swiftlint swiftlint version ?? Using realm/SwiftLint 0.38.0 from Mintfile. ?? SwiftLint 0.38.0 already installed ?? Running swiftlint 0.38.0... 0.38.0 |
作为
Mint的一项功能,如果在执行程序包时未安装它,它将自动安装。
如果您不在CI / CD环境中使用
卸载软件包
1 | $ mint uninstall {パッケージ名}@{バージョン} |
由于可以安装
软件包的多个版本,因此基本上指定版本并进行卸载。
如果未指定版本,请卸载所有版本。
包版本升级
只需在
较旧的版本将保留,因此如果不需要,请
奖励:本地安装路径
默认情况下,
软件包安装在
因此,与CocoaPods和Carthage不同,它没有版本控制,而没有将安装文件夹添加到
当我快速浏览安装文件夹时,似乎没有按项目名称管理软件包。
如果在不同项目之间使用相同版本的软件包,则可能会引用相同的文件夹。
由于很难与
CI一起使用,因此建议为
在本地,应设置如下。
.bash_profile
1 2 3 4 | if which mint >/dev/null; then export MINT_PATH="${HOME}/.mint/lib" export MINT_LINK_PATH="${HOME}/.mint/bin" fi |
注意:在运行脚本阶段与Xcode 11.5及更高版本
一起使用时需要解决方法
在Xcode 11.5或更高版本的运行脚本阶段中使用Mint时,会发生以下构建错误。
您可以通过在
脚本的开头运行
毕竟有副作用。使用Mint管理R.swift时,发生"
由于使用Mint构建的命令行工具可在macOS上运行,因此最好在
如果您正在使用Mint Carthage XcodeGen,请进行以下设置。
不必要取决于Carthage管理的库的类型,因此,如果发生上述错误,则可以对其进行处理。
project.yml
1 2 | options: carthageExecutablePath: xcrun --sdk macosx mint run Carthage/Carthage carthage |
参考
- https://github.com/yonaskolb/Mint/issues/179
- https://twitter.com/the_uhooi/status/1331040735391404032?s=20
结论
我能够轻松管理Swift命令行工具!
在iOS应用程序开发中,管理SwiftLint,Carthage,XcodeGen,Mockolo等将取得很大进展。
参考链接
- yonaskolb / Mint:一个软件包管理器,用于安装和运行Swift CLI软件包
- 使用Mint-Qiita管理Swift命令行工具
- 我搜索了薄荷--ryokosuge.io-中
- https://twitter.com/giginet/status/1219580555244625921?s=20