GPIO Ports mit Pi4J ansteuern

  • Ausgelagert aus Ansteuerung der GPIO Ports mit Pi4J



    Hallo Leute.

    Das Thema ist zwar schon länger her, ich greife es trotzdem nochmal auf.

    Leider komme ich absolut nicht weiter. Ich bekomme mein JAVA Programm als .jar Datei exportiert und auch zum laufen auf dem Raspberry, wenn ich jetzt aber jetzt einen GPIO mit Pi4J ansteuern möchte komme ich nicht weiter.

    Habe den Buildpath aktualisiert und die .jar Datei auf dem Raspberry. Wenn ich diese jetzt mit "sudo java -jar /test.jar" starte und den GPIO ansteuern möchte kommt die Fehlermeldung: Exception in thread "main" java.lang.NoClassDefFoundError: com/pi4j/io/gpio/GpioFactory.


    Hoffe mir kann jemand helfen.

    Edited once, last by hyle ().

  • Was hast du probiert? Zu “ich habe irgendwas gemacht aber ging nicht” kann man auch nur mit den Achseln zucken.

    Kein Support per PN! Von Hilfestellung sollen alle profitieren!

  • Vermutlich liegt es ja dann daran das der "classpath" fehlt. Diesen bekomme ich nicht hin zu erstellen. Habe im Ordner in der meine .jar Datei liegt einen Ordner "lib" erstellt in dem die Pi4J Dateien liegen.

  • sudo java -classpath .:classes:/home/pi/Desktop/eclipse/uebung/lib/`*` /home/pi/Desktop/eclipse/uebung/cocktail.jar


    dann kommt die Fehlermeldung: Hauptklasse .home.pi.Desktop.eclipse.uebung.cocktail.jar konnte nicht gefunden oder geladen werden

  • Da fehlt ja auch zB das -jar Argument, mit dem man ein jar startet.


    Ich habe lang kein Java mehr gemacht, aber damals konnte das definitiv keine glob-Expansion wie du es da mit `*` probierst. Du kannst nicht einfach dinge aufeinender knallen, und hoffen, dass was passiert.


    Ich nehme mal an deine beste Chance ist das hier: https://stackoverflow.com/ques…-dependencies-using-maven

    Kein Support per PN! Von Hilfestellung sollen alle profitieren!

  • Ich will doch anfürsich nur die GPIOs auf dem Raspberry steuern. (An/Aus) Das Programm dafür schreibe ich in Eclipse unter Windows.

    Ist das wirklich so kompliziert? :conf:=O

  • Du bist doch derjenige, der sich dafuer Java ausgesucht hat. So funktioniert Java nunmal. Wenn du einen einfacheren Weg kennst, ich bin ganz Ohr.

    Kein Support per PN! Von Hilfestellung sollen alle profitieren!

  • Wenn du es einfacher haben willst, benutz einen Arduino. Meine ich ganz ernst. Die entscheidende Leistung es Arduino Teams und der IDE besteht nicht in deren Hardware. Die ist ganz ok. Sondern darin, dass sie ein Oekosystem geschaffen haben, mit dem auch der Laie sich Bibliotheken aussuchen und ganz einfach benutzen kann. Andere Sprachen sind da selten aehnlich gut (mir faellte gerade nur RUST ein), und erfordern deutlich mehr EInarbeitung darein, wie sie ihre Abhaengigkeiten verwalten. Kann man aber hier und jetzt auch durch lamentieren nix dran aendern.

    Kein Support per PN! Von Hilfestellung sollen alle profitieren!

  • Leider ist es jetzt nicht mehr so einfach umzusteigen. Ich habe ein recht aufwändiges Programm mit einigen Zuweisungen, Rezepten, Abläufen, etc mit Eclipse erstellt. Dieses läuft auch sehr gut mitlerweile. Bin schon von Python auf Java umgestiegen weil mir die Visualisierung mit Java und Eclipse besser gefallen hat. Jetzt fehlt halt nur noch die Zuweisung zu den GPIOs. Dachte mir anfänglich das, dies ja nicht so schwer sein kann. Ging in Python auch recht zügig. Aber das ich das jetzt so gar nicht hinbekomme hätte ich nicht gedacht....:wallbash:

  • Ich glaube auch nicht, dass das schwer schwer ist. Aber du musst dich eben damit auseinandersetzen, wie man solche Projekte sauber aufsetzt. Eclipse hat auch garantiert irgendwelche Maven Plugins. Muss man halt fummeln. Du hast dir aber eine Umgebung ausgesucht, wo du hier wenig Hilfe bekommen wirst. Weil 99% allen Codes hier Python, PHP und C sind. Und dann kommt erstmal JavaScript.

    Kein Support per PN! Von Hilfestellung sollen alle profitieren!

    Edited once, last by __deets__ ().