【问题标题】:Java.lang.ClassNotFoundException: Class io.reactivex.functions.Action not foundJava.lang.ClassNotFoundException:找不到类 io.reactivex.functions.Action
【发布时间】:2019-09-19 19:05:03
【问题描述】:

我正在使用 rxjava 版本 v-2.2.6 和 naiksoftware/stompprotocolandroid v-1.6.4

我一直收到这个错误

java.lang.ClassNotFoundException: Class io.reactivex.functions.Action not found   

任何时候我添加这个库实现

'com.github.NaikSoftware:StompProtocolAndroid:1.5.2' 到我的build.gradle 文件,这是为什么呢?

public void connectStomp(View view) {

    List<StompHeader> headers = new ArrayList<>();
    headers.add(new StompHeader(LOGIN, "guest"));
    headers.add(new StompHeader(PASSCODE, "guest"));

    //mStompClient.withClientHeartbeat(10000).withServerHeartbeat(10000);

    resetSubscriptions();

    Disposable dispLifecycle = mStompClient.lifecycle()
    .subscribeOn(Schedulers.io())
    .observeOn(AndroidSchedulers.mainThread())
    .subscribe(lifecycleEvent -> {
    switch (lifecycleEvent.getType()) {
    case OPENED:
    Log.e(TAG, "Stomp connection opened");
    //toast("Stomp connection opened");
    break;
    case ERROR:
    Log.e(TAG, "Stomp connection error", lifecycleEvent.getException());
    //toast("Stomp connection error");
    mStompClient.reconnect();
    break;
    case CLOSED:
    Log.e(TAG, "Stomp connection closed");
    mStompClient.disconnect();
    resetSubscriptions();
    //toast("Stomp connection closed");
    // mStompClient.connect();
    break;
    case FAILED_SERVER_HEARTBEAT:
    Log.e(TAG, "Stomp connection opened");
    //toast("Stomp failed server heartbeat");
    break;
    }
    }, throwable -> {
    Log.e(TAG, "Error on subscribe topic", throwable);
    });

    compositeDisposable.add(dispLifecycle);

    // Receive greetings
    Disposable dispTopic = mStompClient.topic("/topic/greetings")
    .subscribeOn(Schedulers.io())
    .observeOn(AndroidSchedulers.mainThread())
    .subscribe(topicMessage -> {
    Log.d(TAG, "Received " + topicMessage.getPayload());
    //addItem(mGson.fromJson(topicMessage.getPayload(), EchoModel.class));
    }, throwable -> {
    Log.e(TAG, "Error on subscribe topic", throwable);
    });

    compositeDisposable.add(dispTopic);

    mStompClient.connect(headers);

}

【问题讨论】:

  • 格式和语法

标签: java android stomp


【解决方案1】:

NaikSoftware/StompProtocolAndroid 库没有使用更新的代码,我在 android 中集成 stomp 客户端时遇到了类似的问题。

请参阅下面的存储库以获取解决方案,将 server-url 和端口号替换为您的自定义端口和 server-url。

repo-https://github.com/NaikSoftware/StompProtocolAndroid

如果它解决了您的问题,请告诉我。

猜你喜欢
  • 2014-11-28
  • 2021-08-30
  • 2019-05-11
  • 2018-04-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多