我正在开发一个Swift项目,并使用迦太基作为依赖项管理工具。
没有问题,并且能够在Mac OS High Sierra 上成功构建项目。但是在升级到Mac OS Mojave 之后,我的项目即将建立。
在这种情况下,框架(AAA)依赖关系是通过多个路径实现的。因此,Carthage / git尝试多次克隆框架(AAA),我认为这是造成此问题的原因。
Project
| \
S P
| | \
| U |
| | |
\ | /
AAA
这是项目环境:
迦太基命令:
carthage update --use-submodules --platform iOS
错误:
shell任务(/ usr / bin / env git clone --bare --quiet https://bitbucket.org/xxx/xxx_module.git /Users/xx/Library/Caches/org.carthage.CarthageKit/dependencies / xxx_module)失败,退出代码128:致命:目标路径'/Users/xx/Library/Caches/org.carthage.CarthageKit/dependencies/xxx_module'已经存在,并且不是空目录。
我尝试删除和清理项目位置,git缓存也仍然无法正常工作。实际上,手动删除文件夹是行不通的,因为Carthage命令本身会尝试多次克隆同一存储库。
注意:有些问题的标题相似,但在此问题上的范围有所不同。所以我还是将其发布为新问题。
答案 0 :(得分:0)
最后这对我有用。
carthage bootstrap --use-submodules --no-build
这是迦太基 update 与 bootstrap 之间的区别,它对我有用。仍在寻找更好的解释。因为以前的命令(carthage update --use-submodules --platform iOS
)对我有用,直到我将MBP更新到Mac OS Mojave