2017-01-03 2 views
0

Ich brauche die TinyB-Bibliothek, die eine C-Bibliothek ist. Als Java-Programmierer bin ich nur an Jar-Dateien gewöhnt. Wenn ich TinyB mit CMake baue, werden keine Jar-Dateien erzeugt. Wie kann ich Jar-Dateien für TinyB erstellen?Java-Bindungen für TinyB generieren

+0

JAR-Dateien sind _Java_ Archive-Dateien. Beim Kompilieren eines C- oder C++ - Programms wird kein Jar erstellt, da es sich um zwei völlig unterschiedliche Sprachen handelt. Um C- oder C++ - Bibliotheken zu verwenden, müssen Sie JNI verwenden. –

+1

Eigentlich muss er nur eine Build-Option einstellen. TinyB stellt Java-Bindungen in einer JAR bereit, wenn Sie deren Build dazu auffordern. ;-) – Vampire

+0

@ColinShewell Macht es dir etwas auszumachen, warum die Antworten nicht hilfreich waren (und wie du es stattdessen getan hast) oder auf andere Weise eins anzunehmen? Die andere Frage zeigt, dass Sie herausgefunden haben, wie Sie CMake dazu bringen, die Java-Bindungen zu erstellen. http://StackOverflow.com/q/41483380/2799037 – usr1234567

Antwort

1

Diese Bibliothek ist keine Java-Bibliothek, sondern eine in C geschriebene native Bibliothek. Sie können sie nicht direkt in Java verwenden, wie Sie es gewohnt sind, damit sie unabhängig von der Java-Umgebung unabhängig arbeitet.

Sie können die Bibliothek verwenden, aber Sie binden sich an das Betriebssystem, für das die systemeigene Bibliothek erstellt wird. Wenn dies kein Problem für Sie ist, wenn Sie nur Ihr Programm für RaspberryPi schreiben, können Sie JNI oder JNA verwenden, um diese native Bibliothek zu verwenden.

Wenn dies tatsächlich über http://iotdk.intel.com/docs/master/tinyb/ ist, sollten Sie vielleicht die Anweisungen vollständig lesen und nicht blind Befehle ausführen, ohne zu wissen, was Sie tun. Diese Leute stellen bereits Java-Bindungen bereit, die wahrscheinlich JNI oder JNA verwenden, um mit der nativen Bibliothek zu kommunizieren, aber Sie müssen die Generierung der Java-Bindungen (JAR) durch einen Build-Schalter aktivieren.

Verwandte Themen