Я загрузил пример на Java, чтобы продемонстрировать Paho MQTT.Paho MQTT throws Exception
public class Thermometer {
public static final String BROKER_URL = "tcp://test.mosquitto.org:1883";
public static final String TOPIC = "xyz.abc";
private MqttClient client;
public Thermometer() {
try {
MemoryPersistence per = new MemoryPersistence();
String clientId = UUID.randomUUID().toString();
client = new MqttClient(BROKER_URL, clientId, per);
} catch (MqttException e) {
e.printStackTrace();
System.exit(1);
}
}
Проблема возникает, когда я запускаю его, он находит в client = new MqttClient(BROKER_URL, clientId, per);
с
Исключение в потоке "главный" java.lang.IllegalArgumentException в org.eclipse.paho.client.mqttv3.MqttClient. (MqttClient.java:170) на mqtt_pub.Thermometer. (Thermometer.java:26) в mqtt_pub.Thermometer.main (Thermometer.java:65)
Я обнаружил, что @ бросает IllegalArgumentException, если значение QoS не равно 0, 1 или 2, но в классе MemoryPersistence они не упомянуты. Пожалуйста, помогите, заблаговременно.
Возможно, вы используете довольно старую версию библиотеки paho mqtt - так, какую версию вы используете? – nos
Я использовал версию paho 1.0.1. но я прочитал его документацию в http://www.eclipse.org/paho/files/javadoc/index.html?org/eclipse/paho/client/mqttv3/IMqttClient.html, может быть, это mqttv3 – Bryan