有一个常见的技巧可以在 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/