java maven-2 osgi-bundle

java - falta dependencies.dependency.version ''



spring boot osgi (4)

El mensaje es bastante claro: dentro del elemento de dependencies de su pom, tiene un elemento de dependency con el artefacto javax.servlet:servlet-api.jar . Y dentro de este elemento de dependency , debe haber un elemento de versión, pero no lo proporcionaste.

<dependencies> <!-- Provided APIs --> <dependency> <groupId>javax.servlet</groupId> <artifactId>servlet-api</artifactId> <!-- missing version here: --> <version>3.0</version> </dependency> </dependencies>

Tenga en cuenta que 3.0 es solo un ejemplo. Proporcionar la versión correcta.

Estoy tratando de crear un paquete utilizando apache maven. Cuando mvn clean install comando mvn clean install , aparece el siguiente error:

falta dependencies.dependency.version ''para javax.servlet: servlet-api.jar

He colocado ese ''servlet-api.jar'' dentro de la carpeta de recursos de mi proyecto

¿Alguien puede decirme dónde debo colocar ese archivo jar?

ACTUALIZACIÓN: Aquí está mi pom.xml

<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/maven-v4_0_0.xsd"> <parent> <artifactId>felix-parent</artifactId> <groupId>org.apache.felix</groupId> <version>2.1</version> <relativePath>../pom/pom.xml</relativePath> </parent> <modelVersion>4.0.0</modelVersion> <artifactId>maven-bundle-plugin</artifactId> <version>2.4.1-SNAPSHOT</version> <packaging>maven-plugin</packaging> <name>Maven Bundle Plugin</name> <description> Provides a maven plugin that supports creating an OSGi bundle from the contents of the compilation classpath along with its resources and dependencies. Plus a zillion other features. The plugin uses the Bnd tool (http://www.aqute.biz/Code/Bnd) </description> <scm> <connection>scm:svn:http://svn.apache.org/repos/asf/felix/trunk/bundleplugin</connection> <developerConnection>scm:svn:https://svn.apache.org/repos/asf/felix/trunk/bundleplugin</developerConnection> <url>http://svn.apache.org/repos/asf/felix/trunk/bundleplugin</url> </scm> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.5</source> <target>1.5</target> </configuration> </plugin> </plugins> </build> <dependencies> <!-- Provided APIs --> <dependency> <groupId>javax.servlet</groupId> <artifactId>servlet-api</artifactId> </dependency> </dependencies> <reporting> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-plugin-plugin</artifactId> <version>3.2</version> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-changes-plugin</artifactId> <version>2.9</version> <configuration> <component>12311143</component> <versionPrefix>maven-bundle-plugin-</versionPrefix> <statusIds>Resolved,Closed</statusIds> <maxEntries>1000</maxEntries> <issueManagementSystems> <issueManagementSystem>JIRA</issueManagementSystem> </issueManagementSystems> <useJql>true</useJql> </configuration> </plugin> </plugins> </reporting> </project>

Gracias anderson


En mi caso tengo un solo pom y me enfrentaba al mismo problema. Tomando una pista de la respuesta de Harry anterior, agregué mi sección de administración de dependencia y el problema se resolvió.


No has agregado la etiqueta de version en dependency .

<dependency> <groupId>javax.servlet</groupId> <artifactId>servlet-api</artifactId> <version>1.0.0</version> //Add the version. </dependency>


Tuve este mismo error por una razón ligeramente diferente.

Mi proyecto utiliza la gestión de dependencias (tiene 2 secciones <dependencyManagement> por algún motivo) y tiene muchos módulos y submódulos.

Pom de nivel superior tenía:

<dependencyManagement> <dependency> <groupId>org.apache.spark</groupId> <artifactId>spark-core_2.10</artifactId> <version>${spark.version}</version> </dependency> </dependencyManagement>

Pom subnivel tenía

<dependencyManagement> <dependency> <groupId>org.apache.spark</groupId> <artifactId>spark-core_2.10</artifactId> <scope>provided</scope> </dependency> </dependencyManagement>

Hoja pom tenía

<dependency> <groupId>org.apache.spark</groupId> <artifactId>spark-core_2.10</artifactId> </dependency>

Para solucionarlo, quité la sección <dependencyManagement> del pom de nivel medio y cambié el pom de hoja para tener

<dependency> <groupId>org.apache.spark</groupId> <artifactId>spark-core_2.10</artifactId> <scope>provided</scope> </dependency>