Ich bin ein CS-Student und bin über mein Kopf hinweg für ein Projekt zum Jahresende, für das ich die Dimensionen und Positionen eines separaten Fensters finden muss. Ich habe gefunden, dass ich JNA-Bibliotheken verwenden muss und verstehe, wie man das macht, aber ich verstehe nicht, wie man die JNA-Bibliotheken durch das Manifest importiert. Hier ist meine Dateistruktur so weit (ich arbeite in Netbeans):Importieren von Klassen und Dienstprogrammen in das Manifest // JNA
- Projektordner
- dist Ordner
- Verzeichnis nbproject Ordner
- src Ordner
- Testordner
- Bauen .xml
- Game.exe < - Dies ist die Exe, die ich aus der Java-Datei selbst ausführen. Ich brauche dieses Fensters Größe und Lage für den Einsatz finden später im Projekt
- jna.jar < - müssen dies als Classpath implementieren
- Manifest.mf < - ich angeblich diese bearbeiten müssen.
Der Grund, warum ich Ihnen zeigen, um dies zu gewährleisten ist, dass ich die JNA Jar an der richtigen Stelle gesetzt haben.
Als nächstes hier ist mein Manifest:
Manifest-Version: 1.0
X-COMMENT: Main-Class will be added automatically by build
Class-Path: C:\Users\justi_000\Google Drive\4. APCS\JZMinesweeper\jna.jar
Also muss ich das Bit nach dem java -cp
bearbeiten, aber ich weiß nicht, was dort zu setzen, und in welcher Reihenfolge. Die Java-Tuts usw. sind keine große Hilfe.
Sind diese Importe auch korrekt? Sie können das Problem sein und ich habe alles richtig importiert, aber ich bezweifle das.
import com.sun.jna.*;
import com.sun.jna.platform.win32.WinDef.HWND;
import com.sun.jna.win32.*;
Die Klassenpfadanweisung in der Manifestdatei sollte kein absoluter Pfad sein, da dies das Verschieben des Programms an anderer Stelle vollständig verhindert. Nein, es sollte ein Pfad relativ zum Arbeitsverzeichnis des Benutzers sein, etwas, das Sie durch Aufruf von 'System.out.println (System.getProperty (" user.dir ")) erhalten können;' Beachten Sie, dass die Datei jna.jar nicht sein sollte in der JAR-Datei Ihrer Anwendung. –
Ihr zweiter Import sollten Sie tun 'com.sun.jna.platform.win32. *' Und das funktioniert möglicherweise nicht ohne 'jna-platform.jar'. –
Sie könnten Ihre gesamten JAR-Dateien (jna und jna-platform) in ein lib-Verzeichnis stellen und dann einfach lib/* zu Ihrem Klassenpfad hinzufügen. –