203 votes

Maven compile avec plusieurs répertoires src

Existe-t-il un moyen de compiler plusieurs répertoires sources java dans un seul projet?

44voto

sal Points 8058

Cela a fonctionné pour moi

 <build>
    <sourceDirectory>.</sourceDirectory>
    <plugins>
        <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <configuration>
        <includes>
            <include>src/main/java/**/*.java</include>
            <include>src/main2/java/**/*.java</include>
        </includes>
        </configuration>
        </plugin>
    </plugins>
</build>
 

19voto

domi.vds Points 39

pour le faire fonctionner dans intelliJ, vous pouvez également ajouter

 <generatedSourcesDirectory>src/main/generated</generatedSourcesDirectory>
 

maven-compiler-plugin

9voto

sendon1982 Points 610

Cela fonctionne également avec maven en définissant la balise resources. Vous pouvez nommer vos noms de dossier src comme bon vous semble.

     <resources>
        <resource>
            <directory>src/main/java</directory>
            <includes>
                <include>**/*.java</include>
                <include>**/*.properties</include>
                <include>**/*.xml</include>
            </includes>
        </resource>

        <resource>
            <directory>src/main/resources</directory>
            <includes>
                <include>**/*.java</include>
                <include>**/*.properties</include>
                <include>**/*.xml</include>
            </includes>
        </resource>

        <resource>
            <directory>src/main/generated</directory>
            <includes>
                <include>**/*.java</include>
                <include>**/*.properties</include>
                <include>**/*.xml</include>
            </includes>
        </resource>
    </resources>
 

2voto

arntg Points 101

Utilisé le build-helper-maven-plugin à partir de la post et de mettre à jour le dossier src/main/générée. Et mvn clean de la compilation fonctionne sur mon ../common/src/main/java, ou sur ../commun, de sorte gardé le dernier. Alors oui, confirmant que IntelliJ IDEA (ver 10.5.2) au niveau de la compilation a échoué comme David Phillips mentionné. Le problème est que l'IDÉE de ne pas ajouter une autre source, la racine du projet. L'ajouter manuellement résolu le problème. Ce n'est pas agréable que de modifier quoi que ce soit dans le projet doit venir de maven et non pas de l'édition en direct de l'IDÉE des options de projet. Mais je vais être capable de vivre avec elle jusqu'à ce qu'elles construction de soutien-aide-maven-plugin directement tel qu'il sera automatiquement ajouter les sources.

Alors besoin d'une autre solution de contournement pour faire ce travail. Depuis à chaque fois que l'IDÉE de ré-importé maven paramètres après une pom me changer nouvellement ajouté la source a été gardé sur le module, mais il a perdu, il est Source de Dossiers sélections et a été inutile. Donc pour l'IDÉE - nécessité de définir ces une fois:

  • Sélectionnez - les Paramètres de Projet / Maven / Importation / conserver la source et de test des dossiers sur les réimporter.
  • Ajoutez - La Structure De Projet / Project Settings / Modules / {Module} / Sources / Ajouter Du Contenu De La Racine.

Maintenant, garder ces dossiers à l'importation n'est pas la meilleure pratique dans le monde entier, ..., mais lui donner un essai.

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