不能纤细/推动Swift Cocoapods podspec

我试图创建我的第一个结合了ObjC和Swift代码的podspec,但是我很快就发现了一个上传时无法解决的固执错误

将MyLibrary从/Users/lukasschwoebel/Library/Caches/CocoaPods/Pods/External/MyLibrary/540307feb534d63ad9015f3f6452b3ad-be661../../../../../../private/var/folders/2p/_pc_vts51b3_pfydgm7_2n200000gn/T/CocoaPods/Lint/Pods/MyLibrary - 运行预安装钩子 - > MyLibrary(0.1.0) - 错误| [iOS]遇到一个未知的错误(用Swift编写的Pod只能作为框架集成,这个特性仍然处于测试阶段,在你的Podfile中添加use_frameworks!或者选择使用它的目标,使用的Swift Pod是:MyLibrary)验证。

这是我使用的命令:

pod repo push test-podspecs MyLibrary/MyLibrary.podspec --use-libraries --allow-warnings --verbose

正如你可能看到的,这是CocoaPods的最小未触及示例项目,如下所述:https://guides.cocoapods.org/making/using-pod-lib-create.html因为我甚至无法运行此示例,所以我怀疑我的cocoapods配置有问题。

我确定要上传的pod中没有单个Objective C行(尽管最终我想要一个带有ObjC和Swift代码的podspec,但是此时我只想要一个有效的podspec与斯威夫特)。

我甚至无法用纯Swift上传这个简单的pod。 我第一次尝试用CocoaPods v0.39.0,然后降级到0.38.2,之后0.38.0,甚至0.36.0。 即使完全卸载CocoaPods。

看来我需要在CocoaPods中配置一些能够上传Swift podspec的东西? 我明显得到的错误是在Podfile需要use_frameworks的窗口的构建阶段! 被包括。 那么我怎么让CocoaPods在podspec验证过程中编译pod时使用它呢?

另外,我安装了Xcode 7.0.1和OSX 10.10.5,它是Swift 2.0代码。

先谢谢你!

这里是完整的podspec,根据最初创建的MyLibrary.podspec(是的,这是一个本地Podspec-Repo,但不会导致/更改错误)

Pod::Spec.new do |s|
  s.name             = "MyLibrary"
  s.version          = "0.1.0"
  s.summary          = "A short description of MyLibrary." 
  s.description      = 'Sample Description'
  s.license          = 'MIT'
  s.author           = { "Luke A." => "ls@mymail.to" }
  s.source           = { :git => "file:///Users/.../test/MyLibrary/", :tag => s.version.to_s }
  s.platform     = :ios, '8.0'
  s.requires_arc = true
  s.source_files = 'Pod/Classes/**/*'
  s.resource_bundles = {
    'MyLibrary' => ['Pod/Assets/*.png']
  }
  s.frameworks = 'UIKit'
end

我刚刚找到答案,这似乎有点显而易见。

上传/推送pod的命令是使用bash脚本的,所以我并不总是必须键入所有的标志,而只是输入p​​odspec的文件名/路径。 所以在默认的bash脚本中,我有一个标记 - --use-libraries ,这是我的一个pod所需的。

当我尝试了一些东西,并在pod repo push ..输入错字时,我偶然发现了这个man-page:

--use-libraries Linter使用静态库来安装规范

使用静态库时,该标志似乎与Swift podspecs不兼容。 删除该标志lint并成功推送我的podspec。

链接地址: http://www.djcxy.com/p/89643.html

上一篇: Cannot Lint/Push a Swift Cocoapods podspec

下一篇: podspec source :http unpacks to where?