J'ai créé une application web en utilisant maven2 archetype dans netbeans 6.7. Lorsque je fais une construction normale (en supprimant toute la configuration du plugin), il copie tous les fichiers requis, y compris les dossiers '_svn'. Mais je ne veux pas ces fichiers, comment puis-je nettoyer les dossiers/fichiers _svn à partir du fichier * .war et du dossier cible éclaté qui contient le contenu du dossier 'src/main/webapp'?Comment nettoyer les dossiers/fichiers _svn du dossier 'src/main/webapp' quand maven2 crée un projet webapp dans netbeans 6.7?
T E S T S
-------------------------------------------------------
Running com.project.project.taglib.SSTest
Tests run: 0, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.016 sec
Results :
Tests run: 0, Failures: 0, Errors: 0, Skipped: 0
[war:war]
Packaging webapp
Assembling webapp[project-servlets] in
[C:\ROOT\1utils\project\project-servlets\trunk\target\project-servlets]
Processing war project
Copying webapp resources[C:\ROOT\1utils\project\project-servlets\trunk\src\main\webapp]
Webapp assembled in[735 msecs]
Building war: C:\ROOT\1utils\project\project-servlets\trunk\target\project-servlets.war
[install:install]
Installing C:\ROOT\1utils\project\project-servlets\trunk\target\project-servlets.war
to C:\LOCALREPO\.m2\com\project\project-servlets\1.0.0\project-servlets-1.0.0.war
J'ai réussi à utiliser le filtrage des ressources en pom.xml pour filtrer les fichiers _svn, tout ce qui fonctionne parfaitement si je crée un fichier jar. Mais avec la guerre, après la phase TEST, il copie le contenu du dossier 'src/main/webapp' ([war: war]), je n'arrive pas à trouver un moyen de localiser quelle config/commande fait cela? est ce netbeans? c'est l'un des plug-ins que j'utilise? Voici la section build de mon pom.xml, l'aide sera très appréciée !!
<project>
.. ...
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
<excludes>
<exclude>_svn/**/*</exclude>
</excludes>
</resource>
</resources>
<testResources>
<testResource>
<directory>src/test/resources</directory>
<filtering>true</filtering>
<excludes>
<exclude>_svn/**/*</exclude>
</excludes>
</testResource>
</testResources>
<plugins>
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<version>2.4</version>
<executions>
<execution>
<id>copy-resources</id>
<phase>validate</phase>
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<outputDirectory>${basedir}/target/project-servlets/WEB-INF</outputDirectory>
<resources>
<resource>
<directory>${basedir}/src/main/resources</directory>
<filtering>true</filtering>
<excludes>
<exclude>_svn/**/*</exclude>
</excludes>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.0.2</version>
<configuration>
<verbose>true</verbose>
<source>1.5</source>
<target>1.5</target>
</configuration>
</plugin>
</plugins>
<finalName>project-servlets</finalName>
</build>
..
..
</project>
@Pascal Thivent - merci beaucoup pour la réponse. J'ai ajouté la configuration 'maven-war-plugin' et il a commencé à faire l'emballage deux fois !!
[war:war] Packaging webapp
Assembling webapp[project-servlets] in [C:\ROOT\1utils\frg\project-servlets\trunk\target\project-servlets]
Processing war project
Copying webapp resources[C:\ROOT\1utils\frg\project-servlets\trunk\src\main\webapp]
Webapp assembled in[391 msecs]
Building war: C:\ROOT\1utils\frg\project-servlets\trunk\target\project-servlets.war [war:war]
Packaging webapp
Assembling webapp[project-servlets] in [C:\ROOT\1utils\frg\project-servlets\trunk\target\project-servlets]
Dependency[Dependency {groupId=log4j, artifactId=log4j, version=1.2.8, type=jar}] has changed (was Dependency {groupId=log4j, artifactId=log4j, version=1.2.8, type=jar}).
Dependency[Dependency {groupId=com.frg, artifactId=project, version=1.1.7, type=jar}] has changed (was Dependency {groupId=com.frg, artifactId=project, version=1.1.7, type=jar}).
Dependency[Dependency {groupId=com.frg, artifactId=commons, version=1.0.3, type=jar}] has changed (was Dependency {groupId=com.frg, artifactId=commons, version=1.0.3, type=jar}).
Dependency[Dependency {groupId=net.sourceforge.jtds, artifactId=jtds, version=1.2.2, type=jar}] has changed (was Dependency {groupId=net.sourceforge.jtds, artifactId=jtds, version=1.2.2, type=jar}).
Processing war project
Le fichier pom a maintenant la configuration suivante ..
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<executions>
<execution>
<id>war</id>
<phase>package</phase>
<goals><goal>war</goal></goals>
<configuration>
<webResources>
<resource>
<directory>src/main/webapp</directory>
<excludes>
<exclude>_svn/**/*</exclude>
<exclude>**/_svn/**</exclude>
</excludes>
</resource>
</webResources>
</configuration>
</execution>
</executions>
</plugin>
Et je vois encore les dossiers _ svn dans les fichiers de guerre !! Cependant, après avoir changé les dossiers _ svn en dossiers .svn, je n'ai même pas besoin de filtrer les ressources !! Il ignore automatiquement les dossiers '.svn'. Je pense qu'il devrait y avoir un paramètre quelque part pour définir la préférence de '.svn' à '_svn'. Quoi qu'il en soit, cela résout mon problème initial, mais introduit un problème d'incompatibilité avec mes anciens projets .NET versionnés. :)
Il ignore probablement ' .svn' car '.svn' est un dossier caché comparé à' _svn' qui ne l'est pas, pas parce qu'il reconnaît '.svn' comme dossier de contrôle de source. –
Ma réponse initiale était partiellement incorrecte et je l'ai réparée. Mais je suggère toujours d'utiliser le schéma de nommage "standard" '.svn' au lieu de' _svn'. En ce qui concerne le problème de compatibilité descendante avec vos projets .NET, ne pouvez-vous pas les vérifier en utilisant '.svn'? –
J'ai résolu le problème en utilisant SVN_ASP_DOT_NET_HACK. Dans l'invite de commande, je dois définir la valeur à vide pour m'assurer qu'il reconnaît .svn comme dossier de contrôle de version approprié et extraire une nouvelle copie. Donc tout fonctionne correctement côte à côte .. –