mqtt kafka bridge install - adnotacje nie są obsługiwane w źródle 1.3

0

Usiłuję zainstalować MQTT KAFKA na Ubuntu i pojawia się błąd „adnotacje nie są obsługiwane w źródle 1.3”, gdy uruchamiamy ANT cmd.

Z badania problemu wynika, że ​​istnieje kilka poprawek, ale nie rozwiązały one naszego problemu:

  • Ustaw katalog Java_Home na poprawną wersję
  • edytuj pom.xml java wersja 1.7

Podejrzewam, że ma to związek z konfiguracją Java, ponieważ widziałem inne problemy z instalacją, ale nie mogę być pewien z powodu mojej ograniczonej sprawności w systemach Linux.

Każda pomoc będzie mile widziana!

Fearghal
źródło

Odpowiedzi:

0

Było z tym kilka przedmiotów:

  1. potrzebna jest zależność o nazwie Klient Paho Java MQTT. Można to zainstalować ręcznie ze strony Paho, użyj wersji 0.4.0. Uruchom mvn clean install, aby dodać go do lokalnego repozytorium maven, a następnie edytuj plik pom.xml dostarczany z mqttKafkaBridge, aby wskazać pliki jar i pom, które zostały dodane do lokalnego repozytorium maven. w pom.xml pojawia się błąd, który pochodzi qith mqttKafkaBridge, ponieważ odnosi się do Paho 0.9.0, który nie istnieje, a zmiana na 0.4.0 nie rozwiązuje go. Upewnij się, że uruchomiłeś mvn clean install w folderze najwyższego poziomu, nie w żadnym z podfolderów. Uważaj również na problem kompilacji z plikiem ClientComms.java. Aby to naprawić, edytuj plik build.xml w folderze org.eclipse.paho.client.mqttv3, aby wskazał prawidłową lokalizację dla ClientComms.java, tj .:

  2. wymagana jest również kafka 0.7.2. nie będzie działać z 0.8.0-beta1 (przetestowałem oba). aby uzyskać 0.7.2, pobierz źródło i zainstaluj za pomocą sbt (proste narzędzie do budowania) patrz: http://kafka.apache.org/07/quickstart.html. Niestety nie dodaje to Kafka 0.7.2 do twojego lokalnego repozytorium maven. Aby to zrobić, przejdź do katalogu źródłowego kafka i uruchom: mvn install: install-file -Dfile = core / target / scala_2.8.0 / kafka-0.7.2.jar -DgroupId = org.apache.kafka -DartifactId = kafka - Dversion = 0,7.2 - Opakowanie = słoik. Następnie musisz wrócić do mqttKafkaBridge i edytować zależność kafka w pliku pom.xml, aby na to wskazać. Uruchomienie ./sbt publikacja-lokalna && ./sbt publikacja dla kafki 0.8.0-beta1 będzie działać i dodać ją do lokalnego repozytorium maven (.m2 / repozytorium), ale kompilacja mqttKafkaBridge nie powiedzie się, że kafka 0.8.0-beta1 nie jest poprawny. Uruchomienie ./sbt publikacja-lokalna działa dla Kafki 0.7.2, ale publikacja ./sbt kończy się niepowodzeniem, więc musisz użyć trasy mvn install: plik instalacyjny (która nie działa w wersji 0.8.0-beta1).

  3. ostatni krok był również trudny. Znalazłem link na ten temat, który pomógł mi go rozwiązać: http://mail-archives.apache.org/mod_mbox/kafka-dev/201301.mbox/%3CJIRA.12523213.1316101732625.79420.1357290855035@arcas%3E . Artykuł sugeruje, że ANT nie będzie działał na potrzeby jego kompilacji i używania maven. uruchom mvn clean install zamiast ANT i powinien się skompilować.

nie ma zbyt wiele dokumentacji na ten temat, a komponenty i wersje są dość niedawno opracowane, więc mam nadzieję, że ten post pomoże innym w rozwiązaniu problemu.

Mike Nolan
źródło