slack-api-client 1.x is not compatible with tyrus-standalone-client 2.x
When I use in my project:
tyrus-standalone-client 2.0.0
slack-api-client 1.7.0
i receive:
***************************
APPLICATION FAILED TO START
***************************
Description:
An attempt was made to call a method that does not exist. The attempt was made from the following location:
com.slack.api.socket_mode.impl.SocketModeClientTyrusImpl.connect(SocketModeClientTyrusImpl.java:170)
The following method did not exist:
'javax.websocket.Session org.glassfish.tyrus.client.ClientManager.connectToServer(java.lang.Object, java.net.URI)'
The method's class, org.glassfish.tyrus.client.ClientManager, is available from the following locations:
jar:file:/home/tomaszlos/.gradle/caches/modules-2/files-2.1/org.glassfish.tyrus.bundles/tyrus-standalone-client/2.0.0/87902cd5c919b93cffa063fb0212366165aa74ed/tyrus-standalone-client-2.0.0.jar!/org/glassfish/tyrus/client/ClientManager.class
The class hierarchy was loaded from the following locations:
org.glassfish.tyrus.client.ClientManager: file:/home/tomaszlos/.gradle/caches/modules-2/files-2.1/org.glassfish.tyrus.bundles/tyrus-standalone-client/2.0.0/87902cd5c919b93cffa063fb0212366165aa74ed/tyrus-standalone-client-2.0.0.jar
org.glassfish.tyrus.core.BaseContainer: file:/home/tomaszlos/.gradle/caches/modules-2/files-2.1/org.glassfish.tyrus.bundles/tyrus-standalone-client/2.0.0/87902cd5c919b93cffa063fb0212366165aa74ed/tyrus-standalone-client-2.0.0.jar
org.glassfish.tyrus.core.ExecutorServiceProvider: file:/home/tomaszlos/.gradle/caches/modules-2/files-2.1/org.glassfish.tyrus.bundles/tyrus-standalone-client/2.0.0/87902cd5c919b93cffa063fb0212366165aa74ed/tyrus-standalone-client-2.0.0.jar
Action:
Correct the classpath of your application so that it contains a single, compatible version of org.glassfish.tyrus.client.ClientManager
But When I change tyrus-standalone-client to 1.17 all works fine.
Java Runtime version
openjdk version "11.0.10" 2021-01-19
OS info
20.04.1-Ubuntu
Expected result:
the slack API lib should handle newer versions of tyrus-standalone-client.
@tloszabno Thanks for asking the question!
For v1.x series, we don't upgrade tyrus-standalone-client to 2.x The reason is that upgrading the major version of the dependency can be a breaking change to existing users (actually, there are a lot of changes in their v2). Also, we need some time for migration and testing.
We haven't decided when to release the next major version yet but it won't happen at least within a few weeks.
If you have some reason to use tyrus-standalone-client 2.x right now, please consider forking only the classes depending on tyrus-standalone-client until this SDK's v2 release.