J'ai essayé d'installer SwiftLint en utilisant CocoaPods et j'ajoute dans les phases de construction le script suivant:
No lintable files found at paths : ''
SwiftLint est installé correctement et j'obtiens de nombreuses erreurs et avertissements dans le projet.
Ensuite, je crée le fichier swiftLint.yml dans lequel je modifie certaines règles mais elles ne sont pas prises en compte et le même nombre d'erreurs et d'avertissements persistent dans le projet Xcode.
Quand j'exécute cette commande pour confirmer l'application des règles:
./swiftlint lint --config .swiftlint.yml
J'obtiens l'erreur:
"${PODS_ROOT}/SwiftLint/swiftlint"
Comment puis-je résoudre ce problème s'il vous plaît ?
3 Réponses :
Tout d'abord, vous n'avez pas besoin d'ajouter explicitement le fichier --config si le fichier yml se trouve dans le répertoire en cours d'exécution (à partir duquel vous exécutez la commande ) et le nom est .swiftlint.yml .
Deuxièmement, vous devez spécifier le chemin de votre source avec --path . La commande ci-dessous fonctionnera bien dans votre cas,
swiftlint lint --path SourcePath
si vous utilisez swiftLint avec CocoaPods: essayez "$ {PODS_ROOT} / SwiftLint / swiftlint" --config .swiflint.yml dans votre SwiftLint Run Script dans les phases de construction de votre projet.
assurez-vous que votre fichier de configuration .swiflint.yml se trouve à la racine du répertoire de votre projet (à côté du fichier .xcodeproj).
assurez-vous que les chemins inclus dans votre .swiflint.yml (dans les sections incluses: et exclues:) sont des chemins valides
assurez-vous que votre fichier .swiflint.yml est valide yaml
n'échappez pas aux chemins de répertoire dans votre fichier de configuration
ne pas faire: - certains \ Directory mais faire - certains répertoires sans caractère d'échappement.
Pour swiftlint de la version 0.41, le code suivant a fonctionné pour moi dans la phase de construction (espace de travail avec plusieurs projets. Selon la configuration du projet, il se peut que "../" doive être supprimé des informations de chemin): pre> XXX
Voici une capture d'écran de l'entrée de la phase de construction:
Je n'ai pas eu cette erreur lors de l'exécution de la même commande sur mon fichier de règles, donc je suppose que l'erreur se trouve dans le fichier
.swiftlint.ymlPourriez-vous s'il vous plaît vous montrer le fichier .swiftlint.yml?