Używanie javah na Linuksie

Mam prostą klasę do użycia w JNI, którą muszę wyeksportować do pliku nagłówkowego (.h).

Czytałem, że muszę użyćjavah polecenie, przechodząc dosrc folder projektu i wpisz:

javah -jni com.main_package.NativeClass 

W systemie Windows działa dobrze, ale na moim głównym systemie operacyjnym (Linux) nie działa. Ciągle mówi, że nie może znaleźć klasy. Próbowałem użyć wielu kombinacji polecenia i uruchomić go na wielu możliwych ścieżkach, ale nie zadziałało. Poszedłem za wieloma samouczkami i stronami internetowymi (w tym tutaj) i wypróbowałem ich kombinacje.

Próbowałem nawet użyć do tego zewnętrznego narzędzia Eclipse, jak pokazanotutaj, ale również pokazał ten sam błąd.

Błąd, który otrzymuję, wygląda tak:

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.

Czy ktoś może mi pomóc? Naprawdę lubię pracować na Linuksie i nie chciałbym zmieniać systemu operacyjnego za każdym razem, gdy muszę korzystać z tego narzędzia.

Oto poprawna odpowiedź:

w konsoli przejdź do folderu „bin / classes” i uruchom polecenie, którego użyłem:

javah -jni com.main_package.NativeClass

za eclipse użyj linku, który podałem, ale zamiast${project_loc}/bin/ posługiwać się${project_loc}/bin/classes/ , a następnie w eksploratorze pakietów przejdź do NativeClass.java i uruchom narzędzie zewnętrzne. wyjście będzie w tej samej ścieżce, co plik java.

questionAnswers(2)

yourAnswerToTheQuestion