我需要编写websocket客户端。 我开始学习本教程:https://github.com/eugenp/tutorials/blob/master/spring-boot/src/main/java/org/baeldung/websocket
运行StomClient后我收到了:
java.lang.NoClassDefFoundError: javax/websocket/ClientEndpointConfig$Configurator
at WebSocketTester.testConnection(WebSocketTester.java:16)
引起:java.lang.ClassNotFoundException: javax.websocket.ClientEndpointConfig $ Configurator at java.net.URLClassLoader.findClass(URLClassLoader.java:381)at java.lang.ClassLoader.loadClass(ClassLoader.java:424)at sun.misc.Launcher $ AppClassLoader.loadClass(Launcher.java:335)at at java.lang.ClassLoader.loadClass(ClassLoader.java:357)... 23更多
我的pom只有这种依赖关系:
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-websocket</artifactId>
<version>5.0.2.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-messaging</artifactId>
<version>5.0.2.RELEASE</version>
</dependency>
客户端和会话处理程序从附加链接下的github复制。 从客户端类
中的这一行WebSocketClient client = new StandardWebSocketClient();
抛出异常
答案 0 :(得分:5)
尝试添加以下依赖项。它对我有用。
<dependency>
<groupId>org.glassfish.tyrus.bundles</groupId>
<artifactId>tyrus-standalone-client</artifactId>
<version>1.9</version>
</dependency>
答案 1 :(得分:1)
用于WebSockets的Spring Boot Starter具有您需要的依赖项:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-websocket</artifactId>
</dependency>
答案 2 :(得分:1)
出现相同的错误。通过添加以下依赖关系来解决它。
<dependency>
<groupId>javax.websocket</groupId>
<artifactId>javax.websocket-api</artifactId>
<version>1.1</version>
</dependency>