Domanda

sto cercando di applicare Maven per un progetto esistente, che ha già una struttura di directory sul posto. Tutto quello che posso trovare dalla domanda precedente è la seguente.

Maven struttura di directory

Tuttavia, la mia richiesta è più dettagliato. Vedi sotto per la struttura di directory:

 <root dir>
    |
    +--src-java
    |
    +--src-properties
    |
    +--WEB-INF

So che avremmo potuto avere qualcosa di simile

<build>
<sourceDirectory>src-java</sourceDirectory>
...
</build>

Ma sourceDirectory è per il codice sorgente Java solo, se non sbaglio.

Per la struttura di cui sopra, come faccio dichiaro in pom.xml? Spostare la directory è la mia ultima opzione al momento.

È stato utile?

Soluzione

Credo che hai bisogno di qualcosa di simile al di sotto.

Vedendo WEB-INF, suppongo si vuole costruire una guerra. Maven guerra plug fa questo. Sarà necessario configurare questo bit di un dato che la struttura di cartelle non è standard - ad esempio, potrebbe essere necessario specificare la posizione di web.xml utilizzando la proprietà webXml. Questi sono documentati nella pagina di utilizzo .

<build>
    <sourceDirectory>src-java</sourceDirectory>
    ...
    <resources>
      <resource>
        <directory>src-properties</directory>
      </resource>
    </resources>
    ...
    <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-war-plugin</artifactId>
                <configuration>
                    <warSourceDirectory>WEB-INF</warSourceDirectory>
                    ...
                </configuration>
            </plugin>
     </plugins>
</build>

Altri suggerimenti

È possibile modificare la struttura delle directory di default dichiarato nel Super POM da loro sovrascrivendo nel pom.

Per il tuo esempio, per es.

<sourceDirectory>src-java</sourceDirectory>
<resources>
  <resource>
    <directory>src-properties</directory>
  </resource>
</resources>

Maven copierà tutte le risorse per il file jar. Se si desidera includere WEB-INF per il vaso sarebbe meglio spostarlo nella directory risorsa specificata. In caso contrario, è necessario copiarlo da soli (con plugin Maven) nella directory di destinazione - suppongo

.
 <resources>
  <resource>
    <directory>${project.basedir}/src/main/resources</directory>
  </resource>

qui .

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top