0

私はMQTTとが初めてですpaho Libs for Android。今日、以下に示すように簡単な接続の例を作成しようとしましたが、何が起こるかというとlogcat、コードにエラーがないにもかかわらず、以下に投稿されたものからエラーメッセージが表示されますが、実行時にEclipseが言うcan not run the projects due to errors "which are not exist"かアプリがクラッシュし、以下に投稿されたエラーログ。

また、からダウンロードしたプロジェクトにあるライブラリの写真を下に投稿しましたpaho website

私が欠けているものと私が間違っていたことを教えてください。

コード:

public class MQTT_00 extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.mqtt_00_layout);

        MqttClientPersistence persistence = null;
        try {
            persistence = new MqttDefaultFilePersistence("/temp/");
        } catch (MqttPersistenceException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        try {
            MqttClient client = new MqttClient("tcp://localhost:1883", "MQTTSub", persistence);
            MqttConnectOptions opts = new MqttConnectOptions();
            opts.setKeepAliveInterval(480);
            opts.setWill(client.getTopic("willTopic"), "something bad happened".getBytes(), 1, true);
            client.connect(opts);
        } catch (MqttException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
}

}

LogCat :

11-10 12:52:49.617: E/AndroidRuntime(30700): FATAL EXCEPTION: main
11-10 12:52:49.617: E/AndroidRuntime(30700): Process: com.example.mqtt_00, PID: 30700
11-10 12:52:49.617: E/AndroidRuntime(30700): java.lang.NoClassDefFoundError:  
org.eclipse.paho.client.mqttv3.MqttDefaultFilePersistence
11-1 12:52:49.617: E/AndroidRuntime(30700):     at 
com.example.mqtt_00.MQTT_00.onCreate(MQTT_00.java:21)
11-10 12:52:49.617: E/AndroidRuntime(30700):    at   
android.app.Activity.performCreate(Activity.java:5389)
11-10 12:52:49.617: E/AndroidRuntime(30700):    at  
android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1105)
11-10 12:52:49.617: E/AndroidRuntime(30700):    at 
android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2246)
11-10 12:52:49.617: E/AndroidRuntime(30700):    at 
android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2340)
 11-10 12:52:49.617: E/AndroidRuntime(30700):   at 
android.app.ActivityThread.access$800(ActivityThread.java:157)
11-10 12:52:49.617: E/AndroidRuntime(30700):    at 
android.app.ActivityThread$H.handleMessage(ActivityThread.java:1247)
11-10 12:52:49.617: E/AndroidRuntime(30700):    at 
android.os.Handler.dispatchMessage(Handler.java:102)
11-10 12:52:49.617: E/AndroidRuntime(30700):    at android.os.Looper.loop(Looper.java:157)
11-10 12:52:49.617: E/AndroidRuntime(30700):    at 
android.app.ActivityThread.main(ActivityThread.java:5293)
11-10 12:52:49.617: E/AndroidRuntime(30700):    at java.lang.reflect.Method.invokeNative(Native 
Method)
11-10 12:52:49.617: E/AndroidRuntime(30700):    at 
java.lang.reflect.Method.invoke(Method.java:515)
11-10 12:52:49.617: E/AndroidRuntime(30700):    at   
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1265)
11-10 12:52:49.617: E/AndroidRuntime(30700):    at c   
com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1081)
11-10 12:52:49.617: E/AndroidRuntime(30700):    at dalvik.system.NativeStart.main(Native Method)

ピック ここに画像の説明を入力

4

1 に答える 1

0

Java ビルド パス -> ライブラリに外部 Jar を追加して、ライブラリを正しく追加したことを確認してから、ライブラリを順番にチェックし、タブをエクスポートします。完了したら、プロジェクトを消去して、もう一度実行してみてください。これで問題は解決するはずです。

それは私の最後に働いた。

于 2014-12-09T15:01:02.353 に答える