J'avais mentionné les bibliothèques de dépendance dans le fichier pom, le chemin du système de la bibliothèque existe également, mais lors de la compilation à l'aide de maven clean install -e -X, une erreur est générée en indiquant que le package n'existe pas.
**[INFO] -------------------------------------------------------------
[ERROR] COMPILATION ERROR :
[INFO] -------------------------------------------------------------
[ERROR] /C:/Users/gopc/workspace/RestfulService/src/restfu/Hello.Java:[4,19] C:\Users\gopc\workspace\RestfulService\src\restfu\Hello.Java:4: package javax.ws.rs does not exist
[ERROR] /C:/Users/gopc/workspace/RestfulService/src/restfu/Hello.Java:[5,19] C:\Users\gopc\workspace\RestfulService\src\restfu\Hello.Java:5: package javax.ws.rs does not exist
[ERROR] /C:/Users/gopc/workspace/RestfulService/src/restfu/Hello.Java:[6,19] C:\Users\gopc\workspace\RestfulService\src\restfu\Hello.Java:6: package javax.ws.rs does not exist
[ERROR] /C:/Users/gopc/workspace/RestfulService/src/restfu/Hello.Java:[8,1] C:\Users\gopc\workspace\RestfulService\src\restfu\Hello.Java:8: package javax.ws.rs.core does not exist
[ERROR] /C:/Users/gopc/workspace/RestfulService/src/restfu/Hello.Java:[21,2] C:\Users\gopc\workspace\RestfulService\src\restfu\Hello.Java:21: cannot find symbol
symbol: class Path**
<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>RestfulService</groupId>
<artifactId>RestfulService</artifactId>
<version>0.0.1-SNAPSHOT</version>
<build>
<sourceDirectory>${basedir}/src</sourceDirectory>
<outputDirectory>${basedir}/build/classes</outputDirectory>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.Apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.0</version>
<configuration>
<source>1.5</source>
<target>1.5</target>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>jersey-server</groupId>
<artifactId>jersey-server</artifactId>
<version>1.4</version>
<scope>compile</scope>
<systemPath>${basedir}/lib/jersey-server-1.4.jar</systemPath>
</dependency>
<dependency>
<groupId>javax.ws.rs</groupId>
<artifactId>javax.ws.rs</artifactId>
<version>1.4</version>
<scope>system</scope>
<systemPath>${basedir}/lib/javax.ws.rs.jar</systemPath>
</dependency>
</dependencies>
</dependencyManagement>
</project>
Vous devez inclure les dépendances Java EE dans votre POM, avec une étendue provided
(c'est-à-dire que les fichiers seront éventuellement fournis par le serveur d'applications, mais que j'ai besoin d'eux pour la compilation).
<dependency>
<groupId>javax</groupId>
<artifactId>javaee-web-api</artifactId>
<version>6.0</version>
<scope>provided</scope>
</dependency>
J'avais ce problème et d'autres problèmes similaires après la mise à jour du système, lorsque NetBeans a changé de polices et de l'interface graphique en général. J'ai résolu ce problème en ajoutant Java EE 6 API Library
dans NetBeans IDE en faisant
myProject->Properties->Libraries->Add Library
Je pense que cette dépendance est meilleure
<dependency>
<groupId>javax.ws.rs</groupId>
<artifactId>jsr311-api</artifactId>
<version>1.1.1</version>
</dependency>
Jersey est publié dans le référentiel Java.net; utilisez simplement ceci (ou mieux éditez vos paramètres utilisateur.xml):
<repositories>
<repository>
<id>maven2-repository.Java.net</id>
<name>Java.net Repository for Maven</name>
<url>http://download.Java.net/maven/2/</url>
<layout>default</layout>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.Sun.jersey</groupId>
<artifactId>jersey-server</artifactId>
<version>1.8</version>
</dependency>
</dependencies>
JSR311 (javax.ws.rs) sera téléchargé automatiquement par maven comme dépendance jersey-core.
J'ai résolu le problème en ajoutant les dépendances entre les balises <project>
au lieu de dans la gestion des dépendances.
La dépendance à laquelle @Perception a répondu est également nécessaire, mais elle ne me suffisait pas non plus. La dépendance suivante était également nécessaire:
<dependency>
<groupId>javax.ws.rs</groupId>
<artifactId>javax.ws.rs-api</artifactId>
<version>2.0</version>
</dependency>
https://mvnrepository.com/artifact/javax.ws.rs/javax.ws.rs-api/2.0
Cela a résolu le problème pour moi!
Dans mon cas, c’était IntelliJ 'make' qui ne fonctionnait pas, bien que l’installation propre de MVN a bien fonctionné. La solution consiste à supprimer les deux "modules" erronés de la "structure de projet" -> onglet Modules, les modules étant: principal et test. D'une manière ou d'une autre, ils y sont entrés en créant un projet à partir d'une source existante.