ios - 如何在 CocoaPod PodSpec 中创建 Ruby 字符串?

标签 ios ruby cocoapods

有一个常见的技巧可以在 pod 规范中重复使用字符串:

  s.version = '0.0.2'
  s.source = { :git => ..., :tag => s.version }

通过在分配后重用 s.version 字符串,我不必记得在更新我的 podspec 时更改两个字段。

但是,我真正想做的是用“v0.0.2”而不是“0.0.2”标记我的代码。因此,我尝试通过在版本前添加“v”来创建一个新字符串:

  s.source = { :git => ..., :tag => 'v' +  s.version }

但是,这会破坏 pod 命令。

我记得前段时间在搜索其他东西时看到一个技巧,它展示了如何将 Ruby 代码注入(inject)规范,但我现在找不到了,即使我不能确定它解决了我想做的事情.

所以,我的问题是,这是否可能,如果可能,我该如何实现?

最佳答案

您缺少 .to_s 调用。我创建了一个示例 podspec 来重现您的问题。事实上,:

s.source = { :git => ..., :tag => 'v' +  s.version }

没有通过使用 lint 的验证,我遇到了很多错误。但是,我添加了 to_s 调用并且它对我有用并且 lint 开始获取我的 v1.0.0 标记。

s.source = { :git => ..., :tag => 'v' +  s.version.to_s }

希望对您有所帮助。

关于ios - 如何在 CocoaPod PodSpec 中创建 Ruby 字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22645698/

相关文章:

iphone - 监控连接状态和处理掉线

ios - 使用 navigationBarHidden 作为 getter 属性不会出错

ruby - package.json (javascript npm) 或 requirements.txt (python pip) 等同于 ruby

iOS - 应用程序在首次启动时启动非常慢

ios - 同步打开 UIDocument

ruby-on-rails - 从 Rails 4.1 中的选择中保存枚举

ruby-on-rails - JRuby gem 问题

gradle - 项目 'cocoapods'未与Gradle链接

ios - 找不到扩展的主机目标

ios - React-native-twitter-signin : ios Undefined symbols for architecture x86_64, 编辑:尝试在没有有效 twitter 工具包 url 方案的情况下登录