ios - Carthage 获取并构建不在我的 Cartfile 中的存储库
问题描述
仅供参考 Xcode 12.3,Mac M1。
当我运行 Carthage 命令carthage update --platform iOS时,Carthage 会获取一个不在 Cartfile 中的存储库。你能解释一下为什么吗?
为了调试这个,我卸载了 Carthage,清理了缓存等,然后重新安装了。
以下是显示详细信息的终端日志。请注意,如下所示的 Cartfile 不包含 CocoaLumberjack,但 Carthage 仍会获取它。请注意,在先前版本的 Cartfile 中包含了 Cocoalumberjack。
paul@Pauls-Mac-mini nannup % brew uninstall carthage
Uninstalling /opt/homebrew/Cellar/carthage/0.36.1... (8 files, 7.4MB)
paul@Pauls-Mac-mini nannup % brew uninstall --force carthage
paul@Pauls-Mac-mini nannup % sudo rm -rf ~/Library/Caches/carthage
Password:
paul@Pauls-Mac-mini nannup % ls -al /usr/local/bin/Cathage
ls: /usr/local/bin/Cathage: No such file or directory
paul@Pauls-Mac-mini nannup % brew install carthage
Updating Homebrew...
==> Downloading https://homebrew.bintray.com/bottles/carthage-0.36.1.arm64_big_sur.bottle.tar.gz
Already downloaded: /Users/paul/Library/Caches/Homebrew/downloads/3bafbfa7dcc8f2622063f9e7fdd0120c68f04fc5efa14d5bbd2f49695b9b011c--carthage-0.36.1.arm64_big_sur.bottle.tar.gz
==> Pouring carthage-0.36.1.arm64_big_sur.bottle.tar.gz
==> Caveats
zsh completions have been installed to:
/opt/homebrew/share/zsh/site-functions
==> Summary
/opt/homebrew/Cellar/carthage/0.36.1: 8 files, 7.4MB
paul@Pauls-Mac-mini nannup % xcodebuild -version
Xcode 12.3
Build version 12C33
paul@Pauls-Mac-mini nannup % cat Cartfile
github "devxoul/Toaster" == 2.3.0
github "SVGKit/SVGKit" "3.x"
paul@Pauls-Mac-mini nannup % rm -rf Carthage
paul@Pauls-Mac-mini nannup % rm -rf Cartfile.resolved
paul@Pauls-Mac-mini nannup % ls
Cartfile Nannup Nannup.xcodeproj T-Nannup carthage.sh contributors.txt libs
paul@Pauls-Mac-mini nannup % carthage update --platform iOS
*** Fetching Toaster
*** Fetching SVGKit
*** Fetching CocoaLumberjack
*** Checking out CocoaLumberjack at "3.7.0"
*** Checking out SVGKit at "11b6d774d2710a8b1c0493146be5d56e56961946"
*** Checking out Toaster at "2.3.0"
为什么没有在 Cartfile 中获取 repo?
解决方案
当某人不是体验开发人员时,这是一个有效的问题。但是@pbm 是对的,许多框架本身都有依赖项,必须下载它们才能使您包含的框架工作。
为了抽象这种复杂性,我们有这些很好的依赖管理器,比如 Cocoapods、Carthage 和 SPM ☺️
推荐阅读
- javascript - 在 S3 上为 next.js 单独提供静态文件
- c# - System.Text.Json 动态修改数据
- c++ - 得到“在 PDF 文件中找不到 EOF 标记”。使用 Tesseract C++ API 但 Tesseract 命令行实用程序工作正常
- c++ - 用指定范围内的随机数填充数组(C++)
- c++ - 是否可以通过从 if 语句中取出表达式来减少测试用例?
- titanium - Appcelerator 钛合金构建错误构建失败 CopySwiftLibs
- linux-kernel - 如何将 MQTT 代理集成到基于 Linux 的 raspbian 内核源代码中并在 Ubuntu 20.04.2 中交叉编译?
- javascript - 嵌套的 Mongo DB 查询
- php - 在base64_decode解码后密码为空
- docker - 在 AWS EC2 上执行爬虫后如何删除日志或数据?