我尝试使用Swift创建Pod,但是无法使其在Swift项目上运行。
我创建非常简单的快速扩展
import UIKit
public extension UIView {
public func sw_foo() {
println("bar")
}
}
和Podfile
source 'https://github.com/CocoaPods/Specs.git'
use_frameworks!
pod "TestSwift", :path => "../"
在Objective-C项目中,我可以导入
#import <TestSwift/TestSwift-Swift.h>
并使用方法[self.view sw_foo];
但是在Swift项目中,当我命令+单击标题
import TestSwift
时我无法即使我将其声明为公开我也看不到我的方法
import TestSwift
import UIKit
var TestSwiftVersionNumber: Double
这是非常简单的 class ,我不知道我做错了什么。
在Pod 0.36.3和0.36.4上试用
这是我的项目:https://www.dropbox.com/s/h6yyq8207iajlsv/TestSwift.zip?dl=0
和podspec
Pod::Spec.new do |s|
s.name = "TestSwift"
s.version = "0.1.0"
s.summary = "A short description of TestSwift."
s.description = <<-DESC
An optional longer description of TestSwift
* Markdown format.
* Don't worry about the indent, we strip it!
DESC
s.homepage = "https://github.com/<GITHUB_USERNAME>/TestSwift"
# s.screenshots = "www.example.com/screenshots_1", "www.example.com/screenshots_2"
s.license = 'MIT'
s.author = { "Sarun Wongpatcharapakorn" => "[email protected]" }
s.source = { :git => "https://github.com/<GITHUB_USERNAME>/TestSwift.git", :tag => s.version.to_s }
# s.social_media_url = 'https://twitter.com/<TWITTER_USERNAME>'
s.platform = :ios, '7.0'
s.requires_arc = true
s.source_files = 'Pod/Classes/**/*'
s.resource_bundles = {
'TestSwift' => ['Pod/Assets/*.png']
}
# s.public_header_files = 'Pod/Classes/**/*.h'
s.frameworks = 'UIKit'
# s.dependency 'AFNetworking', '~> 2.3'
end
最佳答案
似乎文件对您的项目不可见。
如果这是.swift
文件,而不是.framework
,请尝试将文件添加到
构建阶段->编译源
它看起来应该像这样:
只要您已正确完成所有操作-正确的podspec文件等-并且您的项目结构如下所示: