2017-04-15 4 views
0

このトピックは数多くの時間を費やしていますが、解決後何時間もstackoverflowを見ていますが、それでも動作しません。 Eclipseから、実行可能なjarファイルをエクスポートするときに私のjarファイルを動作させることはできません。私はそれを実行すると、プログラムはEclipseで完璧に動作していますが、jarファイルを開こうとすると画面が2秒間黒くなり、何も起こりません。私はjava -jar nameoffile.jarでコマンドでそれを開こうとしますが、そこにはfilenotfoundexceptionがあります。これは、私がそれを実行しようとしたときcmdのように見えます。Jarファイルが機能していない(cmdで実行しているときにfilenotfoundexception)

誰にも提案はありますか? おかげ

enter image description here

+0

あなたはあなたの瓶を作るために何を使用していますか? – ProgrammerBoy

+0

私はexport - > runnable jarファイルを使用します –

+0

"必要なライブラリを生成されたjarに"と "必要なライブラリを生成されたjarに抽出しようとしました" –

答えて

1

問題は、あなたのリソースを取得する方法です。

あなたはwavファイルをsrcフォルダに入れて、FileInputStreamを使って取得してみてください。これは動作しません。

あなたが瓶にファイルを置く場合は、それらをth​​rougにアクセスする必要があります。このような

getClass().getResourceAsStream(filepath)

何かを。単なる例です

public class LoadFile { 
    public static void main(String[] args) throws Exception { 
     InputStream stream = 
      LoadFile.class.getResourceAsStream("/songwavs/s1_..._.wav"); 
      AudioSystem.getAudioFileFormat(stream); 
      AudioSystem.getAudioFileFormat(url); 
    } 
} 

、ポイントは瓶の内部資源であること、クラスローダはそれを得るためのツールであるということです。

ので、非静的メソッド内で、あなたは使用することができます

public void myMethod() throws Exception{ 
    InputStream stream = getClass().getResourceAsStream("/songwavs/s1_..._.wav"); 
    AudioSystem.getAudioFileFormat(stream); 
} 

をいくつかの状況では、あなたがこのようなスレッドクラスローダを使用する必要があります。

public void myMethod2() throws Exception{ 
    InputStream stream = Thread.currentThread().getContextClassLoader().getResourceAsStream("/songwavs/s1_..._.wav"); 
    AudioSystem.getAudioFileFormat(stream); 
} 

次に、あなたがあなたのファイルを読むに置くことができます日食や瓶から走っているときの両方。

アプリケーションをパッケージ化してデプロイする方法については、これ以上のことが言えますが、それは単なるスタートです。

+0

Ok。しかし、プログラムを変更する代わりに、かなりのコードがエクスポートJARファイルの選択 "生成されたjarファイルの隣にサブフォルダに必要なライブラリをコピーする"という選択肢があります。 –

+0

jarファイル内のエントリはファイルではありませんが、FileInputStreamはファイルを読み込みません。アプリケーションと一緒にsrcディレクトリを展開し、アプリケーションを実行するときに作業ディレクトリ内に配置する必要があります。 – minus

+0

助けてくれてありがとう!今夜私のプログラムをLoadFile.classを使って変更するつもりです。getResourceAsStream( "/ songwavs/s1 _..._。wav");それが動作するかどうかを確認してください。私は今夜​​後半に戻ります –

関連する問題