D:\jarConceptsディレクトリに単純な Demo.java ファイルがあります。
import javax.swing.* ;
class Demo{
public static void main(String args[]){
JFrame frame = new JFrame("") ;
frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE) ;
Class c = null ;
try{
c = Class.forName("com.mysql.jdbc.Driver") ;
//com.mysql.jdbc.Driver class is in a jar file
//whose class path is set in the environment variable(explicitly done by me)
//when i am executing Demo.class using java command, it displays frame with OK title
//but if i execute this by creating a jar, it enables to load the
//com.mysql.jdbc.Driver class,
//thus displaying frame with Sorry title
frame.setTitle("OK") ;
}
catch(ClassNotFoundException cnfe){
frame.setTitle("Sorry") ;
}
frame.setVisible(true) ;
}
}
次のテキストを含む manifest.txt ファイルを D:\jarConcepts に用意しました。
メインクラス: デモ
クラスパス: C:\Program Files\MySQL\MySQL Tools for 5.0\java\lib\mysql-connector-java-5.0.4-bin.jar
いつ、私は同じディレクトリからjarファイルを作成します
jar -cvfm Demo.jar manifest.txt .class
以下は出力です:
追加されたマニフェストの追加: Demo.class(in = 743) (out= 505)(収縮 32%)
しかし、生成されたjarファイルを実行すると、エラーメッセージが表示され、
メインクラスを見つけることができませんでした。プログラムは終了します。
次のマニフェスト コードで jar ファイルを作成するときに、なぜこれが起こっているのかわかりません。
メインクラス: デモ
私は完全に実行可能な Demo.jar を取得しています。唯一の問題は、それが ] クラス パスから Driver クラスをロードしていないことと、マニフェストにパスを追加しようとしても機能しないことです... plzヘルプ.......