如何正确创建carthage cartfile?

时间:2015-05-22 16:15:17

标签: ios carthage

我正在研究cartfile。迫不及待地“简单地创建一个购物车文件”,就像所有的说明一样。

只有......你怎么“简单地”创建一个Cartfile?

我创建了一个纯文本文档,将其命名为cartfile并在其中复制了一些依赖项。

在我的根项目目录中运行carthage update

获取此错误:“目录中没有此类文件”

下载了一个示例carthage项目,Cartfile实际上是一个可执行文件。那么如何“简单地创建”一个Cartfile,因为没有任何关于如何

的说明

5 个答案:

答案 0 :(得分:60)

从命令行导航到项目目录。

touch Cartfile

现在创建Cartfile,使其可执行:

chmod +x [YourDirectory/Cartfile]

您可以使用任何文本编辑器打开它。然后插入您想要的任何库和源(例如:github "SwiftyJSON/SwiftyJSON" >= 2.1.2

答案 1 :(得分:44)

Carthage Tutorial: Getting Started是必读的。它比Carthage documentation更好地解释了事情。

的步骤

  1. 在终端中,cd到要添加框架的项目的根目录。这应该与* .xcodeproj文件位于同一目录中。

    cd ~/Path/To/Your/Project/
    
  2. 创建一个名为Cartfile的空文件,如下所示:

    touch Cartfile
    
  3. 使用Xcode打开该文件:

    open -a Xcode Cartfile
    
  4. 将您需要的框架信息粘贴到Cartfile中。例如:

    github "stephencelis/SQLite.swift" ~> 0.10.1
    
  5. 在Xcode中关闭文件,在终端中运行以下命令,使Carthage更新项目中的依赖项。 (您仍应与Cartfile位于同一目录中。)

    carthage update --platform iOS
    
  6. 注释

    • 使用上述方法,无需更改Cartfile的执行权限。
    • 在使用之前,您仍需要将框架链接添加到项目中。有关详细信息,请参阅我在顶部链接的教程。

答案 2 :(得分:0)

如果未安装迦太基,请通过运行以下命令进行安装。

酿造迦太基

答案 3 :(得分:0)

如果你是第一次使用迦太基

先下载安装包

下载 latest Carthage pkg 并运行它进行安装。

并按照以上步骤

2 在终端中,cd 到要添加框架的项目的根目录。这应该与您的 *.xcodeproj 文件位于同一目录。

cd ~/Path/To/Your/Project/

  1. 像这样创建一个名为 Cartfile 的空文件:

触摸购物车文件

4.用Xcode打开那个文件:

打开 -a Xcode Cartfile

5.将您需要的框架信息粘贴到 Cartfile 中。例如:

github "stephencelis/SQLite.swift" ~> 0.10.1

6.在 Xcode 中关闭文件并在终端中运行以下命令,让 Carthage 更新您项目中的依赖项。 (您应该仍与 Cartfile 位于同一目录中。)

carthage 更新 --platform iOS

答案 4 :(得分:0)

Cartfile 是一个普通的文本文件,没有任何扩展名。您可以使用命令行或任何应用程序等任何可能性来创建它。此文件区分大小写。

如果您创建 cartfile(小写)或 Cartfile.txt(带扩展名)并运行 carthage update,您会得到如下结果:

2021-04-23 17:00:27.692 carthage[94911:3694738] INFO: fetch-response is unable to open the file /Users/alex/Library/Caches/carthage/fsCachedData/F1841822-AACC-4E8A-ACB0-D801D3C72063. Errno: 2
Failed to read file or folder at <some_path>/Cartfile: Error Domain=NSCocoaErrorDomain Code=260 "The file “Cartfile” couldn’t be opened because there is no such file." UserInfo={NSFilePath=<some_path>/Cartfile, NSUnderlyingError=0x7ff8f7727240 {Error Domain=NSPOSIXErrorDomain Code=2 "No such file or directory"}}

检查扩展

Right click on Cartfile -> Get Info -> [Name & Extension:]
//you are able to remove the extension here