Ich benutze Eclipse, um eine JNI-Header-Datei zu generieren. Ich schaute in program files\java\jre6\bin
und fand eine Menge .exe und .dll Dateien, aber ich konnte den Befehl javah
nicht finden, der in der Dokumentation zur Verwendung von JNI war, um Bindungen zu C-Bibliotheken zu erstellen.
Irgendwelche Hilfe?Wie generiere ich JNI-Header-Datei in Eclipse
Antwort
Verwenden Sie das folgende Fenster, um ein neues externes Tool für javah.exe zu definieren.
Zeigen Sie "Location" auf das Werkzeug javah.exe.
Set "Working Directory" auf
${workspace_loc:/${project_name}/bin}
Set "Argumente" zu:
-classpath ${project_classpath} -v -d ${workspace_loc:/${project_name}/src} ${java_type_name}
das Tool auszuführen, markieren Sie die Java-Quelldatei im Paket-Explorer und Lauf das Werkzeug.
Drücken Sie F5 th Projekt zu aktualisieren, um die neu erzeugte Datei zu sehen.
können Sie bitte erklären Sie die Argumente ... das wird wirklich hilfreich sein ... danke – aProgrammer
Klicken Sie auf die "Variablen .." Taste. Die Beschreibung für jeden ist dort aufgeführt. – Java42
woo hoo! Beeindruckende Arbeit. –
Nur einige Informationen ...
Leider über die Lösung nicht für mich arbeiten, aber die Lösung in diesem Thread tat
Using javah -jni with an Eclipse project structure
Mit den oben genannten Argumente erwähnt, habe ich :
Exception in thread "main" java.lang.IllegalArgumentException: Not a valid class name:path/to/project
fand ich heraus, dass das Problem ein Leerzeichen in der war Pfad zu meinem Projekt. Für die obige Lösung war es hilfreich, die Pfade in Anführungszeichen zu schreiben.
Ort
// javah.exe Pfad
C: \ Programme \ Java \ jdk1.7.0_79 \ bin \ javah.exe
Arbeitsverzeichnis
$ {workspace_loc:/$ {projektname}/bin}
Argumente
-classpath $ {project_classpath} -v -d $ {workspace_loc:/$ {project_name}/jni} $ {} java_type_name
offene Java-Klasse und Lauf-Tools
- 1. Eclipse JDT AST: Wie generiere ich AST in Java-Datei?
- 2. Wie generiere ich serialVersionUID programmatisch in Java?
- 3. Wie generiere ich Javadoc-Dokumentation mit Umlauten?
- 4. Wie generiere ich zeitbasierte UUIDs?
- 5. Wie generiere ich Methoden in jmh-Benchmarks?
- 6. Wie generiere ich Daten in MySQL?
- 7. Wie generiere ich generische Listentypen in Java?
- 8. Wie generiere ich eine Zufallszahl in JavaScript?
- 9. Wie generiere ich ein UUIDv4 in MySQL?
- 10. Vim: Wie generiere ich sql "IN" -Klausel
- 11. Wie generiere ich serielle Version UID in Intellij
- 12. JOOQ: Generiere Quellen mit Maven in Eclipse erzeugt keine Datei
- 13. Wie generiere ich eine generische AsyncTask?
- 14. Wie generiere ich changlogFile im .sql Format?
- 15. Wie generiere ich einfache 2D-Grafiken in Echtzeit?
- 16. Wie generiere ich Datenbankklassendateien mit SubSonic 3?
- 17. Wie generiere ich RTF aus Java?
- 18. Wie generiere ich Zeichenketten mit ibtool?
- 19. Wie generiere ich JaxB-Klassen mit java.util.Optional?
- 20. Wie generiere ich generic enum auf int?
- 21. Wie generiere ich IDs für Supporttickets?
- 22. Wie generiere ich pdf mit epydoc?
- 23. Wie generiere ich ganze Java-Bohnen?
- 24. Wie generiere ich .json Datei mit PHP?
- 25. Wie generiere ich RTFs mit PHP
- 26. Wie generiere ich Apk mit Genexus?
- 27. Wie generiere ich Android-Stil Javadocs?
- 28. Wie generiere ich specflow nunit testresult.xml
- 29. Wie generiere ich generic datacontext mit linq
- 30. Wie generiere ich Tests in Tests/Verzeichnis in PHPStorm?
Check this out : http: // Stapelüberlauf.com/questions/10483959/javah-fehler-android-app-activity-not-found/25989225 # 25989225 –