2012-05-02 5 views
1

J'ai mis à jour de Maven 2 à Maven 3 et il semble fonctionner correctement pour nettoyer l'installation.Mise à niveau vers Maven 3 de Maven 2

Cependant, dans les notes de compatiblité: https://cwiki.apache.org/MAVEN/maven-3x-compatibility-notes.html

Il est mentionné que la déclaration étiquette est pas plus pris en charge et doit être déplacé jusqu'à la build tag.




<reporting> 
    <plugins> 
     <plugin> 
     <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-project-info-reports-plugin</artifactId> 
     <version>2.1</version> 
     <reportSets> 
      <reportSet> 
      <reports> 
       <report>dependencies</report> 
       <report>dependency-convergence</report> 
       <report>dependency-management</report> 
       <report>index</report> 
       <report>plugin-management</report> 
       <report>project-team</report> 
       <report>license</report> 
       <report>summary</report> 
      </reports> 
      </reportSet> 
     </reportSets> 
     </plugin> 
    </plugins> 
    </reporting> 



J'ai ** commenté cela et déplacé la balise plugin et son contenu, ** à la construction -> plugins étiquette.

Quand je lance mvn maintenant validate, je reçois l'erreur suivante:

[ERROR] The build could not read 1 project -> [Help 1] 
[ERROR] 
[ERROR] The project com.company.projectName:ProjectName:1.2 (C:\Svn\projectName\branches\projectName-1.2\System\4_ImplementationSet\WAS\src\pom.xml) has 1 error 
[ERROR]  Malformed POM C:\Svn\projectName\branches\projectName-1.2\System\4_ImplementationSet\WAS\src\pom.xml: Unrecognised tag: 'reportSets' (position: START_TAG seen ...</version>\r\n  <reportSets>... @123:21) @ C:\Svn\projectName\branches\projectName-1.2\System\4_ImplementationSet\WAS\src\pom.xml, line 123, column 21 -> [Help 2] 

Est-ce que je manque quelque chose? Je pouvais laisser les choses telles qu'elles sont, mais j'ai essayé de les déplacer mais cela n'a pas fonctionné.

Répondre

3

Essayez:

<plugins> 
     ... 
     <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-site-plugin</artifactId> 
      <version>3.0</version> 
      <configuration> 
       <reportPlugins> 
        <plugin> 
         <groupId>org.apache.maven.plugins</groupId> 
         <artifactId>maven-project-info-reports-plugin</artifactId> 
         <version>2.4</version> 
         <configuration> 
          <reportSets> 
           <reportSet> 
            <reports> 
             <report>dependencies</report> 
             <report>dependency-convergence</report> 
             <report>dependency-management</report> 
             <report>index</report> 
             <report>plugin-management</report> 
             <report>project-team</report> 
             <report>license</report> 
             <report>summary</report> 
            </reports> 
           </reportSet> 
          </reportSets> 
         </configuration> 
        </plugin> 
        ... 
       </reportPlugins> 
      </configuration> 
     </plugin> 
     ... 
    </plugins> 

(non testé, je ne suis pas sûr de la reportSets parties)

+0

Merci! Cela a fonctionné (changé de 2.4 à 2.1). Au moins il n'y a pas de plainte de mvn validate :) – momomo

+0

En attendant, vous pouvez utiliser la version 3.1 de maven-site-plugin. En outre, le document sur la mise à jour http://maven.apache.org/plugins/maven-site-plugin/maven-3.html – khmarbaise

+0

pourquoi je reçois cette exception: java.lang.NoClassDefFoundError: org/sonatype/aether/graph/Dependency ... java.lang.ClassNotFoundException: org.sonatype.aether.graph.Dependency ...? –

3

Il ne s'agit pas simplement de copier l'étiquette à un endroit différent. Le schéma a également changé d'autres façons.

Je vous suggère de lire la documentation pour la configuration "Maven 3 uniquement", puisque c'est ce que vous semblez vouloir faire. Voici un link.