Creé mi proyecto con la misma estructura que en el siguiente fragmento de código.Significado de la etiqueta padre en Maven
|-- modP
| |-- pom.xml
| |-- src
| | |-- main
| | `-- java
| | `-- com
| | `-- myorg
| | `-- myapp
| | `-- modP
| | `-- AppP.java
|-- modC1
| |-- pom.xml
| |-- src
| | |-- main
| | `-- java
| | `-- com
| | `-- myorg
| | `-- myapp
| | `-- modC
| | `-- AppM.java
|-- modC2
| |-- pom.xml
| |-- src
|-- main
`-- java
`-- com
`-- myorg
`-- myapp
`-- modC2
`-- AppN.java
Mi pom.xml para MODP es:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org /2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org /xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.myorg.myapp</groupId>
<artifactId>modP</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>pom</packaging>
<name>modP</name>
<url>http://maven.apache.org</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
</dependencies>
</project>
Mi pom.xml para C1 es:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org /2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org /xsd/maven-4.0.0.xsd">
<parent>
<artifactId>modP</artifactId>
<groupId>com.myorg.myapp</groupId>
<version>0.0.1-SNAPSHOT</version>
<relativePath>.../modP/pom.xml</relativePath>
</parent>
<modelVersion>4.0.0</modelVersion>
<groupId>com.myorg.myapp</groupId>
<artifactId>modC1</artifactId>
<packaging>jar</packaging>
<name>modC1</name>
<url>http://maven.apache.org</url>
</project>
Y pom.xml para C2 es:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org /2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org /xsd/maven-4.0.0.xsd">
<parent>
<artifactId>modP</artifactId>
<groupId>com.myorg.myapp</groupId>
<version>0.0.1-SNAPSHOT</version>
<relativePath>.../modP/pom.xml</relativePath>
</parent>
<modelVersion>4.0.0</modelVersion>
<groupId>com.myorg.myapp</groupId>
<artifactId>modC2</artifactId>
<packaging>jar</packaging>
<name>modC2</name>
<url>http://maven.apache.org</url>
</project>
Mi pregunta es si puedo usar dicha referencia de configuración AppP.jav a desde ModP en AppC1.java y AppC2.java en ModC1 y ModC2.
Intenté esto y parece que esto no funciona. ¿Entendí mal el significado de la etiqueta padre en pom.xml? ¿Qué tengo que hacer en maven para tal función?
He leído mucha documentación, pero ahora estoy aún más confundido que antes de leer. :(
Cada respuesta será muy apreciada.
Gracias
entendido bien. Los 3 proyectos están en el mismo directorio, y el número de puntos está de acuerdo con la documentación correcta. Lo que Puce tiene en este caso es correcto. Parent pom.xml (project) no debe contener ningún código. – Tiho