Javah unter Linux benutzen

Ich habe eine einfache Klasse für die Verwendung in JNI, die ich in eine Header-Datei (.h) exportieren muss.

Ich habe gelesen, dass ich das benutzen mussjavah Befehl, indem Sie auf diesrc Ordner des Projekts, und geben Sie Folgendes ein:

javah -jni com.main_package.NativeClass 

Unter Windows funktioniert es einwandfrei, unter meinem Hauptbetriebssystem (Linux) jedoch nicht. Es wird immer wieder darauf hingewiesen, dass die Klasse nicht gefunden werden kann. Ich habe versucht, viele Kombinationen des Befehls zu verwenden und ihn auf vielen möglichen Pfaden auszuführen, aber es hat nicht funktioniert. Ich bin vielen Tutorials und Websites gefolgt (einschließlich hier) und habe auch deren Kombinationen ausprobiert.

Ich habe sogar versucht, dafür das externe Tool von Eclipse zu verwenden (siehe Abbildung)Hier, aber es hat auch den gleichen Fehler gezeigt.

Der Fehler, den ich erhalte, sieht folgendermaßen aus:

error: cannot access com.main_package.NativeClass 
class file for com.main_package.NativeClass  not found
javadoc: error - Class com.main_package.NativeClass  not found.
Error: No classes were specified on the command line.  Try -help.

Kann mir bitte jemand helfen? Ich arbeite sehr gerne unter Linux und möchte nicht jedes Mal das Betriebssystem wechseln, wenn ich dieses Tool benötige.

Hier ist die richtige Antwort:

Wechseln Sie für die Konsole in den Ordner "bin / classes" und führen Sie den Befehl aus, den ich verwendet habe:

javah -jni com.main_package.NativeClass

Verwenden Sie für Eclipse den Link, den ich angegeben habe, aber anstelle von${project_loc}/bin/ benutzen${project_loc}/bin/classes/ Wechseln Sie im Paket-Explorer zur Datei NativeClass.java, und führen Sie das externe Tool aus. Die Ausgabe erfolgt im selben Pfad wie in der Java-Datei.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage