6
votes

Fichiers de ressources Maven, Mettez des fichiers de classe Java et des fichiers de propriétés dans le même répertoire

J'ai des fichiers de classe Java et des fichiers de propriétés dans le même répertoire.

SRC / MAIN / JAVA / COM / BERLIN / TEST.CLASS P>

SRC / MAIN / JAVA / COM / COM / BERLIN / TEST .properties p>

avec le jar Maven I Construire et la cible Maven, je veux que ceux-ci apparaissent dans le même répertoire. Mais Maven placera les fichiers de classe et les fichiers de propriétés dans différents endroits où je fais un package MVN '. P>

.. Sortie: jar -tvf fichier.jar: p>

SAT 11 08:24:32 EDT 2011 MAIN / JAVA / COM / BERLIN / TEST.PROPERTES P>

Je veux: SAT 11 08:24:32 EDT 2011 COM / BERLIN / TEST.PROPERTES SAT JUN 11 08:24:32 EDT 2011 COM / BERLIN / TEST.CLASS.CLASS P>

... P>

Partie de mon POM: P>

<build>
        <finalName>${project.artifactId}</finalName>
        <sourceDirectory>src</sourceDirectory>
        <testSourceDirectory>test</testSourceDirectory>
        <resources>
            <resource>
                <directory>src</directory>
                <includes>
                    <include>**</include>
                </includes>
                <excludes>
                    <exclude>**/*.java</exclude>
                </excludes>
            </resource>
        </resources>
<plugins>
            <plugin>
                <artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                    <source>${java.source.version}</source>
                    <target>${java.target.version}</target>
                </configuration>
            </plugin>           
            <plugin>
                <artifactId>maven-surefire-plugin</artifactId>
                <configuration>
                    <skipTests>true</skipTests>
                </configuration>
            </plugin>            
        </plugins>


0 commentaires

3 Réponses :


1
votes

Tout d'abord, vous devez d'abord placer vos ressources en SRC / Main / Ressources / Com / Berlin / Test.properties et vos fichiers source Java dans SRC / MAIN / JAVA / COM / BERLIN / TEST.JAVA ... Ne mettez jamais de classes compilées dans SRC / Dossier ... En outre, vous devez supprimer la configuration:

  <finalName>${project.artifactId}</finalName>
  <sourceDirectory>src</sourceDirectory>
  <testSourceDirectory>test</testSourceDirectory>
  <resources>
        <resource>
            <directory>src</directory>
            <includes>
                <include>**</include>
            </includes>
            <excludes>
                <exclude>**/*.java</exclude>
            </excludes>
        </resource>
    </resources>


0 commentaires

12
votes

Pour les raisons mavenaires, vous devez placer un fichier de propriétés dans SRC / Main / Ressources, non dans le répertoire SRC / MAIN / Java (en conservant la même structure de sous-dossier).

Cela étant dit, pour obtenir ce que vous voulez que vous devez remplacer (dans votre pom.xml) src avec src / main / java . Non testé, mais si vous avez des problèmes, veuillez partager.


0 commentaires

0
votes
<build>
    <testResources>
        <testResource>
            <directory>src/test/resources</directory>
        </testResource>
        <testResource>
            <directory>src/test/java</directory>
            <excludes>
                <exclude>**/*.java</exclude>
            </excludes>
        </testResource>
    </testResources>
</build>

0 commentaires