Die Frage ist, wie XBee-API in Netbeans für die Verwendung mit anderen Projekten zu installieren?Getting XBee-API zu kompilieren und unter Netbeans
Die Antwort sollte einfach das Maven-Projekt von Github herunterladen und in Netbeans importieren. Kinderleicht. Die Realität ist nicht so einfach. Als Java-Noobie habe ich einen Tag gebraucht, um Xbee API unter Netbeans kompilieren und ausführen zu lassen.
XBee-API Version 0.9.1 von Github ist in einem Maven-Projekt, das direkt in Netbeans importiert, aber es wird nicht ohne weitere Arbeit kompilieren. Für erste Tests habe ich das Digi SDK Kit über ein USB/serielles Kabel an meinen win10 PC angeschlossen. Ich habe ein XBee S2C Digimesh-Gerät betrieben. Letztendlich ist der Grund, warum ich XBee_API verwende, die Kommunikation mit einem Raspberry Pi 3B über I2C.
Die erste zu testende XBee-API-Klasse ist "OpenCloseConnectionsTest" im Ordner "Test". Dies bietet sehr detaillierte Debug-Informationen, die bei der Fehlerbehebung helfen sollten. Wenn das läuft, dann sollte alles andere genauso gut funktionieren.
Erster Fehler war, weil die XBee-API POM-Datei kein Versionstag enthielt. Mein POM sieht jetzt so aus:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>1.5</source>
<target>1.5</target>
</configuration>
</plugin>
Als nächstes fehlten mir RxTx-Dateien. Auf meiner win10 Installation fehlte ich die folgenden Dateien in den folgenden Orten:
...\Program Files\Java\jkd1.6.0_01\jre\bin\rxtxSerial.dll
...\Program Files\Java\jdk1.6.0_01\jre\lib\ext\RXTXcomm.jar
ich diese von here heruntergeladen. Sobald ich diese Dateien an diesen Orten platziert habe, hat Netbeans sie ohne weitere Aktion/Konfiguration gefunden. Ich habe immer noch eine Warnung, weil diese Dateien nicht ganz die gleiche Version haben.
Schließlich musste ich den Quellcode bearbeiten, um die COM-Port-ID festzulegen. In meinem Fall war der XBee auf "COM5".
Ich konnte keine einzige Quelle finden, die alle oben genannten Informationen enthält. Viele Informationen, die ich fand, waren veraltet und einige waren einfach falsch. Hoffentlich hilft dieser Artikel anderen.
Das sieht sehr hilfreich aus. Leider brauchen wir Antworten, um hier eine Frage zum Thema zu haben. Wären Sie in der Lage, dies zu optimieren, so dass das ursprüngliche Problem dargestellt wird, so dass es von einigen dieser Materialien in einer Antwort beantwortet werden kann? – halfer
OK, das war eine Antwort auf eine Frage, aber ich habe es optimiert. Seit ich das geschrieben habe, habe ich festgestellt, dass die Github-Version 0.9.1 nicht die neueste ist. Die neueste Version 0.9.2 befindet sich im Maven Central Repository. Der Unterschied ist wichtig für mich, weil 0.9.2 eine Socket-Funktion enthält, die gemultiplexte Kommunikation über einen einzigen Kanal ermöglicht. Bis Version 0.9.2 war dieser Code getrennt von XBee-API. Jetzt muss ich herausfinden, wie man ein neues Projekt von Maven Central importiert und erstellt. – dazz
Es ist leider immer noch nicht in unserem erforderlichen Q & A-Format. Die Antworten gehen unten und unterscheiden sich deutlich von Fragen. – halfer