iOS文件模式:“ source_files”模式与任何文件都不匹配

时间:2019-10-24 11:23:14

标签: ios swift cocoapods

我正在尝试创建CocoaPod,当我尝试pod lib lint时,出现关于ERROR | [iOS] file patterns: The source_files pattern did not match any file.

的错误

我尝试以BlinkingLabel窗格为例,并使用Gitlab来存储我的.git。我成功地为它添加了标签1.0.0,并为它工作。

enter image description here

我在CocoaPod中使用了Example for Pod及其工作方式,但出现了错误:

Ignoring unf_ext-0.0.7.5 because its extensions are not built.  Try: gem pristine unf_ext --version 0.0.7.5

 -> BlinkingLabel (1.0.0)
    - ERROR | [iOS] file patterns: The `source_files` pattern did not match any file.
    - NOTE  | xcodebuild:  note: Using new build system
    - NOTE  | [iOS] xcodebuild:  note: Planning build
    - NOTE  | [iOS] xcodebuild:  note: Constructing build description
    - NOTE  | [iOS] xcodebuild:  warning: Skipping code signing because the target does not have an Info.plist file and one is not being generated automatically. (in target 'App' from project 'App')

[!] BlinkingLabel did not pass validation, due to 1 error.
You can use the `--no-clean` option to inspect any issue.

我的source_file道具是:

s.source_files = 'BlinkingLabel/Classes/**/*'

但是我已经尝试过:

s.source_files  = "BlinkingLabel/**/*"



s.source_files = 'BlinkingLabel/BlinkingLabel.swift'



s.source_files = 'BlinkingLabel/Classes/**/*.{h,m,c}'

没有人为我工作。

还有一件奇怪的事。

在文章和示例中,建议与BlinkingLabel/Classes/**/*一起使用,但是Classes中没有名为BlinkingLabel的目录,我想是因为CocoaPod或也许新的CocoaPod中有所不同。你能解释一下吗?

以及如何为pod lib lint解决这个问题?

编辑:我在stackoverflow上进行了搜索,但对我没有任何帮助。

谢谢。

2 个答案:

答案 0 :(得分:2)

对于停留在- ERROR | [iOS] file patterns: The source_files pattern did not match any file.上的任何人,请勿使用source_files,如下所示。

s.source_files = 'BlinkingLabel/Classes/**/*'

与内部目录名称和确切的文件类型一起使用。

例如,如果您有一个Handler.swift文件,则必须为该文件。

s.source_files = 'Classes/**/*.swift'

如果您的pod项目中有使用过的.c文件

s.source_files = 'Classes/**/*.c'

或者您可以使用mix different file types

我进一步意识到,您不能信任Classes目录。

您可以创建一个Sources目录,并将所有源文件添加到其中,然后可以尝试使用

s.source_files     =   'Sources/**/*.swift'

这是我的确切解决方案。

我希望它对那些坚持的人有所帮助。

答案 1 :(得分:1)

我很遗憾地问这个问题。

现在有效。

s.source_files = 'BlinkingLabel/Classes/**/*'

我什么都没做,但是可以用。真奇怪。