Bonjour,

J'utilise Eclipse, m2e, m2e-wtp, Maven et un serveur Tomcat.

Dans l'arborescence de mon projet war, j'ai mon dossier webapp/ dans lequel se trouvent des dossiers css/ et js/.
Pour gérer les problèmes de mise à jour du cache du navigateur, il a été décidé de changer le nom des dossiers contenant les fichiers CSS et JS à chaque livraison. Pour se faire j'ai modifié mon POM comme suit :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<plugin>
    <artifactId>maven-war-plugin</artifactId>
    <version>2.1.1</version>
    <configuration>
        <warSourceExcludes>css/**,js/**</warSourceExcludes>
        <webResources>
            <resource>
                <directory>src/main/webapp/css</directory>
                <targetPath>/css-${project.version}</targetPath>
            </resource>
            <resource>
                <directory>src/main/webapp/js</directory>
                <targetPath>/js-${project.version}</targetPath>
            </resource>
        </webResources>
    </configuration>
</plugin>
et dans mes JSP, j'ai par ex : <link rel="stylesheet" type="text/css" media="screen" href="/css-${version}/global.css" />.
Quand je compile via Maven pour une livraison, pas de soucis, j'ai le résultat attendu.

Là où c'est plus gênant, c'est pour le déploiement à chaud en cours de développement.
Quand j'ai un dossier target/ de Maven vide et que je déploie via Eclipse, sous Tomcat ça me génère des dossiers css/ et js/. Ça ne correspond pas aux imports de mes JSP et je n'ai donc aucun CSS ou JS.
Dès que je modifie un fichier CSS ou JS, WTP va générer un nouveau fichier target/m2e-wtp/web-resources/css-4.0.0-SNAPSHOT/global.css par ex et le copiera dans le dossier Tomcat.

C'est pénible car cela oblige à garder à jour à la main le dossier target/m2e-wtp/web-resources/.

Est-ce que quelqu'un a déjà été confronté au problème et si oui, comment l'a-t-il réglé ?

Cordialement.