私はCSの学生で、別プロジェクトのディメンションと場所を探す必要がある年末プロジェクトのために頭を悩ましています。私はJNAライブラリを使用する必要があり、それを行う方法を理解していますが、マニフェストを通してJNAライブラリをインポートする方法を理解していません。ここに私のファイル構造は、(私がNetBeansで働いている)、これまでです:マニフェスト内のクラスとユーティリティのインポート// JNA
- プロジェクトフォルダ
- のdistフォルダ
- nbprojectフォルダ
- srcフォルダ
- テストフォルダ
- ビルド.xml
- Game.exe < - これはjavaファイル自体から実行するexeファイルです。クラスパス
- でManifest.mf <としてこれを実装する必要があります - - 私は、後にプロジェクト
- jna.jar <で使用するために、このウィンドウのサイズと位置を見つける必要があり、私はおそらくこれを編集する必要があります。
私はあなたにこれを示す理由は、私が正しい場所にJNAジャーを入れていることを確認することです。
次は、ここに私のマニフェストです:
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
だから私はjava -cp
後のビットを編集する必要がありますが、私はそこに置くことを知っているし、どのような順序ではありません。 javaツットなどはあまり役に立ちません。
また、これらのインポートは正しいですか?彼らは問題かもしれませんし、すべてを正しく輸入しましたが、私はそれを疑っています。
import com.sun.jna.*;
import com.sun.jna.platform.win32.WinDef.HWND;
import com.sun.jna.win32.*;
マニフェストファイル内のクラスパス文は絶対パスであってはいけません。絶対パスではないので、他の場所にプログラムを移動させることはまったくありません。いいえ、それはUser作業ディレクトリに対する相対パスでなければなりません。これは 'System.out.println(System.getProperty(" user.dir "));'を呼び出すことで得ることができます。jna.jarファイルはあなたのアプリケーションのjarファイル内にあります。 –
2回目のインポートで 'com.sun.jna.platform.win32。*'を実行する必要があります。これは 'jna-platform.jar'がなければ動作しません。 –
すべてのjarファイル(jnaとjna-platform)をlibディレクトリに入れて、クラスパスにlib/*を追加することもできます。 –