迦太基构建失败:文件夹已经存在,并且不是空目录。失败,退出代码128:致命:目标路径

时间:2019-06-27 07:42:19

标签: git dependencies macos-mojave carthage

我正在开发一个Swift项目,并使用迦太基作为依赖项管理工具。

没有问题,并且能够在Mac OS High Sierra 上成功构建项目。但是在升级到Mac OS Mojave 之后,我的项目即将建立。

在这种情况下,框架(AAA)依赖关系是通过多个路径实现的。因此,Carthage / git尝试多次克隆框架(AAA),我认为这是造成此问题的原因。

Project
|  \
S   P
|   |  \
|   U   |
|   |   |
 \  |  /
   AAA

这是项目环境:

  • 操作系统:Mac OS Mojave
  • 迅速:4.2
  • Git:版本2.21.0(苹果)/版本 2.22.0
  • 迦太基:0.33.0

迦太基命令:

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命令本身会尝试多次克隆同一存储库。

注意:有些问题的标题相似,但在此问题上的范围有所不同。所以我还是将其发布为新问题。

1 个答案:

答案 0 :(得分:0)

最后这对我有用。

carthage bootstrap --use-submodules --no-build

这是迦太基 update bootstrap 之间的区别,它对我有用。仍在寻找更好的解释。因为以前的命令(carthage update --use-submodules --platform iOS)对我有用,直到我将MBP更新到Mac OS Mojave