¿Un pom.xml.template me dice todo lo que necesito saber para usar el proyecto como una dependencia?
-
05-07-2019 - |
Pregunta
Estoy tratando de agregar la contribución de la caja de arena de Lucene llamada termino-resaltador a mi pom.xml. Realmente no estoy tan familiarizado con Maven, pero el código tiene un pom.xml.template que parece implicar si agrego una dependencia que se parece a:
<dependency>
<groupId>org.apache.lucene</groupId>
<artifactId>lucene-highlighter</artifactId>
</dependency>
Podría funcionar. ¿Puede alguien ayudarme a agregar un proyecto de lucene-community a mi archivo pom.xml?
Gracias por los comentarios, resulta que agregar la versión era todo lo que necesitaba, y supuse que debería coincidir con la versión de lucene-core que estaba usando:
<dependency>
<groupId>org.apache.lucene</groupId>
<artifactId>lucene-highlighter</artifactId>
<version>2.3.1</version>
</dependency>
Solución
Debe agregar el número de versión, pero solo debe hacerlo una vez en la estructura del proyecto. Es decir, si el número de versión está definido en un pom principal, no tiene que volver a dar el número de versión. (Pero ni siquiera tiene que proporcionar la dependencia en este caso, ya que la dependencia se heredará de todos modos).
Otros consejos
Lo tiene bien, pero probablemente también desee agregar la versión:
Tutorial de 5 minutos de The Maven
<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.mycompany.app</groupId>
<artifactId>my-app</artifactId>
<packaging>jar</packaging>
<version>1.0-SNAPSHOT</version>
<name>Maven Quick Start Archetype</name>
<url>http://maven.apache.org</url>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
</dependencies>
</project>