Je crée un pod pour une bibliothèque open source et dois laisser intacte la structure du répertoire pour les fichiers d'en-tête publics. L'exemple simplifié est la suivante:pod lib lint plaintes concernant les fichiers d'en-tête en dehors de header_mappings_dir
include/header1.h
include/foo/header2.h
src/file.c
src/internal.h
Le répertoire include
contient les en-têtes publics.
Mon podspec contient:
s.public_header_files = 'Foo/Classes/include/**/*'
s.private_header_files = 'Foo/Classes/src/internal.h'
s.header_mappings_dir = 'Foo/Classes/include'
Le projet Example
compile bien et le répertoire Pods/Headers/Public/Foo
contient la même structure que le répertoire include
d'origine.
encore pod lib lint Foo.podspec --use-libraries
me donne cette erreur:
- ERROR | [iOS] header_mappings_dir: There are header files outside of the header_mappings_dir (Foo/Classes/src/internal.h)
bien. Oui. Effectivement. Mais pourquoi est-ce une erreur? Je suis totalement d'accord avec la situation.
J'ai moi-même trouvé une solution, mais je ne suis pas sûre, si c'est la bonne.
s.exclude_files = 'Foo/Classes/src/internal.h'
Cela rend le linter heureux et le projet compile encore. Mais il se sent mal, car le fichier fait partie du projet.
Merci!