Ios 为什么我的CocoaPod没有从指定的URL下载源代码?

Ios 为什么我的CocoaPod没有从指定的URL下载源代码?,ios,cocoapods,dependency-management,ios-frameworks,Ios,Cocoapods,Dependency Management,Ios Frameworks,我有一个经过压缩的iOS框架,我正试图通过CocoaPods在测试应用程序中使用它。我已经在我的github中的releases下添加了它。我的podspec当前看起来像: Pod::Spec.new do |spec| spec.name = "TestPod" spec.version = "0.1" spec.license = { :type => "MIT", :file => "LICENSE" }

我有一个经过压缩的iOS框架,我正试图通过CocoaPods在测试应用程序中使用它。我已经在我的github中的releases下添加了它。我的podspec当前看起来像:

Pod::Spec.new do |spec|
  spec.name             = "TestPod"
  spec.version          = "0.1"
  spec.license          = { :type => "MIT", :file => "LICENSE" }
  spec.homepage         = 'http://www.test.com'
  spec.author           = "test"
  spec.summary          = "test."
  spec.source           = { :http => "https://github.com/username/TestPod/releases/download/0.1/TestPod-0.1.zip"}
  spec.vendored_framework     = "TestPod-0.1/TestPod.framework"
  spec.ios.deployment_target = '8.0'
end
我在我的播客文件中直接使用这个-

target 'TestApp' do
  pod 'TestPod', :git => 'https://github.com/username/TestPod/'
end

但是,在安装
pod
时,我发现压缩文件
TestPod-0.1.zip
既没有下载,也没有将框架添加到我的项目中。有人能告诉我如何让Pod下载我的框架吗?

你必须指定一个git repo,而不仅仅是某个任意目录。因此,不要使用:
https://github.com/username/TestPod/
(一个目录),您应该提取用于克隆repo的URL(路径不是
SSH
)。这可能是
https://github.com/username/TestPod.git
在您的情况下


在Github上,这通常可以在您想要使用的回购协议的顶部找到。如果您仍有问题,请指定您尝试使用的实际回购协议。

您的pod文件应指向回购协议。因此,您的podfile(使用您为TTNew指定的测试repo)应该如下所示:

 pod 'TTNew', :git => 'https://github.com/aditya-tirodkar/TTNew.git'

嗯,我有类似的要求,我的pod安装没有从http源下载我的.zip文件(使用git以及http部署服务器进行了尝试)

它的工作原理就像“谷歌卡斯特idk”的冠军


任何线索都会有帮助。

我找到了解决同样问题的方法:将podspec添加到repo中,不要使用
:git=>'https://github.com/username/TestPod/“
零件。所以它看起来像普通的
pod'TestPod'

一些信息是


为什么它会工作-神秘:)

我也遇到了这个问题,我能够确认使用
:podspec=>
直接访问podspec文件是有效的,但是手动使用
:git=>
锁定
分支没有。从外观上看,
:git=>
从repo中克隆源代码,但不需要执行HTTP下载

事实上,我觉得这并不是一种正式的做法。podspec需要推送到CocoaPods specs repo,然后用传统的方式通过HTTP下载才能工作

考虑到这一点(因为我自己的podspec不是我想在CocoaPods上正式发布的podspec),我能够通过制作并推动podspec解决这个问题

手工制作私人规格回购非常容易:

  • 在GitHub上创建一个名为“/Specs”的新回购
  • 将podspec推送到文件夹结构下的repo
    /.podspec
  • 在原始的
    Podfile
    中,将以下内容添加到顶部
  • 源代码'https://github.com/CocoaPods/Specs.git'
    来源'https://github.com//Specs.git'
    

    从那里,您可以在您的pod文件中使用
    pod'MyRepo'
    ,它将从您的私有specs repo中提取。希望有帮助

    如果有人想知道,可以用
    :podspec
    而不是
    :git
    来解决这个问题,谢谢你的评论!我一直在关注上的博客文章,在你回答使用以下内容之前,我被难住了几个小时:podspec@gran_profaci-:podspec工作正常,但资源包(nib、imeges)为空。知道为什么吗。如果我使用的是:path,那么它不是从源代码下载的,而是能够获得资源包(nib、imeges)。您的回答给出了如何解决问题的一般思路,但没有具体的解决方案。请考虑修改答案!
    source 'https://github.com/CocoaPods/Specs.git'
    source 'https://github.com/<MyAccount>/Specs.git'