我正在爲開源庫構建pod,並且必須保留公共頭文件的目錄結構不變。 簡化的例子是這樣的:pod lib lint關於header_mappings_dir之外的頭文件的投訴
include/header1.h
include/foo/header2.h
src/file.c
src/internal.h
的include
目錄包含公共標頭。
我podspec包含:
s.public_header_files = 'Foo/Classes/include/**/*'
s.private_header_files = 'Foo/Classes/src/internal.h'
s.header_mappings_dir = 'Foo/Classes/include'
的Example
項目編譯罰款和目錄包含相同的結構與原始include
目錄。
不過pod lib lint Foo.podspec --use-libraries
給了我這個錯誤:
- ERROR | [iOS] header_mappings_dir: There are header files outside of the header_mappings_dir (Foo/Classes/src/internal.h)
嘛。是。確實。但爲什麼這是一個錯誤?我對情況完全沒問題。
我自己找到了解決方案,但我不確定,如果是正確的。
s.exclude_files = 'Foo/Classes/src/internal.h'
這使得linter快樂,項目仍然編譯。但感覺不對,因爲該文件是該項目的一部分。
謝謝!