2016-06-30 1 views

Répondre

0

Essayez de définir la source et bases répertoire de sortie sur votre projet Maven, qui est, en utilisant les propriétés standard Maven pour pointer vers le chemin droit absolu lors de l'exécution, en changeant la configuration de la manière suivante:

<sourceDirectory>${basedir}/src/main/resources</sourceDirectory> 
<outputDirectory>${basedir}/src/main/java</outputDirectory> 

Sur la base de cette configuration, le thesourcewsdlfile.wsdl est censé être situé sous src/main/resources/thesourcewsdlfile.wsdl

la configuration complète du plugin devrait donc être:

<plugins> 
    <plugin> 
     <groupId>org.codehaus.mojo</groupId> 
     <artifactId>axistools-maven-plugin</artifactId> 
     <version>1.4</version> 
     <executions> 
      <execution> 
       <phase>generate-sources</phase> 
       <goals> 
        <goal>wsdl2java</goal> 
       </goals> 
       <configuration> 
        <sourceDirectory>${basedir}/src/main/resources</sourceDirectory> 
        <outputDirectory>${basedir}/src/main/java</outputDirectory> 
        <wsdlFiles> 
         <wsdlFile>thesourcewsdlfile.wsdl</wsdlFile> 
        </wsdlFiles> 
       </configuration> 
      </execution> 
     </executions> 
    </plugin> 
</plugins> 

De plus, les dépendances suivantes doivent être ajoutées au projet:

<dependencies> 
    <dependency> 
     <groupId>org.apache.axis</groupId> 
     <artifactId>axis</artifactId> 
     <version>1.4</version> 
    </dependency> 
    <dependency> 
     <groupId>javax.xml</groupId> 
     <artifactId>jaxrpc-api</artifactId> 
     <version>1.1</version> 
    </dependency> 
    <dependency> 
     <groupId>javax.mail</groupId> 
     <artifactId>mail</artifactId> 
     <version>1.4.1</version> 
    </dependency> 
    <dependency> 
     <groupId>javax.activation</groupId> 
     <artifactId>activation</artifactId> 
     <version>1.1</version> 
    </dependency> 
</dependencies> 

Comme une note générale, il serait préférable de placer les sources générées dans le répertoire target, car ils sont générés automatiquement et doivent ne pas être ajouté au contrôle de version en cours d'utilisation. Un emplacement standard serait alors n'importe quel répertoire (significatif) sous ${project.build.directory}/generated-sources (où ${project.build.directory} est la propriété standard pointant vers le répertoire target).

+0

Je suis 'Causé par: java.lang.ClassNotFoundException: org.apache.axis.wsdl.WSDL2Java' quand je donne le chemin absolu comme mentionné ci-dessus. Courir sans aucun fichier source quand je l'enlève. – Arun

+0

@ArunRaj vérifier ma mise à jour, il a essayé et fonctionne bien maintenant. –

+0

Je l'ai essayé mais la même erreur: 'Une classe requise était manquante lors de l'exécution de org.codehaus.mojo: axistools-maven-plugin: 1.4: wsdl2java: org.apache.axis.wsdl.WSDL2Java' Est-ce un problème maven? – Arun