103 votes

Comment rendre le build maven indépendant de la plateforme ?

Lors de la construction à l'aide de Maven sur mon mac, sur mvn install je reçois

[AVERTISSEMENT] Utilisation de l'encodage de la plate-forme (MacRoman en fait) pour copier les données filtrées. filtrées, c'est-à-dire que la compilation dépend de la plate-forme !

Est-il possible de construire pour une plateforme donnée (Linux) ou de rendre la construction indépendante de la plateforme ?

188voto

Kal Points 2324

Cela arrive lorsque vous n'avez pas fourni les éléments suivants dans votre pom.xml

<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>

L'absence de cette information signifie que vous utilisez un encodage spécifique à la plate-forme, d'où l'avertissement.

4 votes

Vous pouvez également trouver la solution dans la page FAQ de Maven. http://maven.apache.org/general.html#encoding-warnin

0 votes

Oui, après avoir ajouté les lignes mentionnées dans votre réponse, le mien fonctionne bien sans avertissement. merci Kal

7voto

Mike Points 57

Et si la réponse de @Kal ne fonctionne pas pour vous, peut-être pouvez-vous apprendre de mes 30 dernières minutes... le lien ci-dessous ajoute une ligne supplémentaire à la réponse ci-dessus et a résolu mon problème. Mon problème était lié au maven-resources-plugin 2.6, mais le fournisseur de la solution suivante avait un problème différent qu'il a résolu... https://stackoverflow.com/a/3018152/2485075

0 votes

La 1ère ligne de mon pom.xml est : <?xml version="1.0" encoding="UTF-8"?> J'ai trouvé le même avertissement sous Windows 7 : [WARNING] Using platform encoding (UTF-8 actually) to copy filtered resources, i.e. build is platform dependent !

1voto

Pour des besoins spécifiques :

<!-- https://maven.apache.org/plugins/maven-resources-plugin/index.html -->
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-resources-plugin</artifactId>
    <version>3.1.0</version>
    <configuration>
        <encoding>UTF-8</encoding>
    </configuration>
</plugin>

Si le plugin est déjà configuré, il faut simplement ajouter

<encoding>UTF-8</encoding>

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X