Je travaille avec un projet Maven (jar) sous Netbeans (Windows), qui crée des rapports Checkstyle avec le plugin Maven Checkstyle.
Quoi que je fasse, je reçois toujours le message: File does not end with a newline
pour les fichiers de classe Java.
Que puis-je faire/configurer dans Netbeans ou Checkstyle pour supprimer le message?
Versions de logiciels utilisés:
Mettre une nouvelle ligne à la fin du fichier
ou
configure CheckStyle pour qu’il ne s’en occupe pas.
<module name="Checker">
<!-- stuff deleted -->
<module name="NewlineAtEndOfFile">
<property name="severity" value="ignore" />
</module>
Vous devez également indiquer au plug-in Maven Checkstyle d'utiliser votre fichier de configuration checkstyle.
<plugin>
<artifactId>maven-checkstyle-plugin</artifactId>
<configuration>
<configLocation>${basedir}/yourCheckstyle.xml</configLocation>
</configuration>
</plugin>
Dans mon cas, c'était un problème de configuration incorrecte de ce vérificateur. Par défaut, il utilise la convention système par défaut des fins de ligne. Je travaillais sur Windows et le projet utilisait des fins de ligne de style unix. Je ne pense pas que l'ignorance de l'avertissement soit la meilleure stratégie. Ce que j'ai fait est la suivante:
<module name="Checker">
<module name="NewlineAtEndOfFile">
<property name="lineSeparator" value="lf" />
</module>
</module>
Je rencontre ce problème lorsque des fichiers sont enregistrés au format UNIX au lieu de DOS. (ou autrement si vous faites votre travail sous Unix)
Pour résoudre ce problème, j’utilise un programme qui convertit le format UNIX en DOS et enregistre le fichier dans ce format.
Dans Eclipse: Fichier -> Convertir les séparateurs de lignes en -> Windows
Il existe un moyen plus simple de faire cela. Vous pouvez spécifier un fichier de suppression sans remplacer le fichier de configuration Sun checkstyle:
<plugin>
<groupId>org.Apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<configuration>
<suppressionsLocation>suppressions.xml</suppressionsLocation>
<configLocation>config/Sun_checks.xml</configLocation>
</configuration>
</plugin>
Où votre suppressions.xml est:
<?xml version="1.0"?>
<!DOCTYPE suppressions PUBLIC
"-//Puppy Crawl//DTD Suppressions 1.1//EN"
"http://www.puppycrawl.com/dtds/suppressions_1_1.dtd">
<suppressions>
<suppress checks="NewlineAtEndOfFile" files=".Java" />
</suppressions>
Eclipse ..Window >> Preferences >> Checkstyle >> Select the configuration file >>
"Properties"
>> Décochez la case Protect Checkstyle Configuration file
."Configure"
>> recherchez "New Line At End Of File"
>> Décochez la case en regard de New Line At End Of File
.