140

SunでJARファイルのJavaチュートリアルを読みましたが、それでも問題の解決策が見つかりません。jtwitter.jarというjarファイルのクラスを使用する必要があります。ファイルをダウンロードして実行してみました(昨日、.jarファイルをダブルクリックすると実行できることがわかりました)。Vistaで「 [パス]/jtwitter.jarからメインクラスマニフェスト属性を読み込めませんでした。

.jarファイルをコーディングした人が私にそれをインポートすることを望んでいますが、コードにインポートするために.jarファイルをどこに保存しますか?.jarファイルと.javaファイルの両方を同じディレクトリに配置しようとしましたが、機能しませんでした。

私が作業しようとしているファイルはここにあります:http ://www.winterwell.com/software/jtwitter.php

JCreatorLEを使用しています。

4

5 に答える 5

183

Classnamejarファイルに含まれているクラスを使用する必要があるとしましょうorg.example.jar

そして、あなたのソースは次のmysource.javaようにファイルにあります:

import org.example.Classname;

public class mysource {
    public static void main(String[] argv) {
    ......
   }
}

まず、ご覧のとおり、コードでクラスをインポートする必要があります。そのために必要なことimport org.example.Classname;

次に、ソースをコンパイルするときに、jar ファイルを参照する必要があります。

コンパイル中:と使用中の違いに注意してください;

  • UNIX ライクなオペレーティング システムを使用している場合:

    javac -cp '.:org.example.jar' mysource.java
    
  • 窓の下にいる場合:

    javac -cp .;org.example.jar mysource.java
    

この後、バイトコードファイルを取得しますmysource.class

これで実行できます:

  • UNIX ライクなオペレーティング システムを使用している場合:

    java -cp '.:org.example.jar' mysource
    
  • 窓の下にいる場合:

    java -cp .;org.example.jar mysource
    
于 2010-05-12T08:42:24.873 に答える
35

すべての jar ファイルが実行可能であるとは限りません。

ここで、jar の下にあるクラスを Java ファイルにインポートする必要があります。例えば、

import org.xml.sax.SAXException;

IDE で作業している場合は、そのドキュメントを参照してください。または、少なくともこのスレッドで使用しているものを指定してください。それは間違いなく私たちがあなたをさらに助けることを可能にするでしょう.

また、IDE を使用していない場合は、 javac -cpオプションを確認してください。jarただし、プログラムをファイルにパッケージ化し、そのjar中に必要なすべての を含めることをお勧めします。次に、を実行するためにjar

java -jar my_program.jar

META-INF/MANIFEST.MFにファイルが必要ですjar方法については、こちらを参照してください。

于 2009-01-20T07:39:05.777 に答える
15

クラスパスにjarファイルを追加する必要があります。Java クラスをコンパイルするには:

javac -cp .;jwitter.jar MyClass.java

コードを実行するには ( MyClass に main メソッドが含まれている場合):

java -cp .;jwitter.jar MyClass

jar ファイルはどこにでも置くことができます。上記は、jar ファイルが Java ファイルと同じディレクトリにある場合に機能します。

于 2009-01-20T07:41:21.513 に答える
8

コードをコンパイル/実行するときは、クラスパスに .jar ファイルを配置する必要があります。次に、.jar 内のクラスの標準インポートを使用するだけです。

于 2009-01-20T07:38:19.490 に答える
6

workmad3 が言うように、jar ファイルをクラスパスに入れる必要があります。コマンドラインからコンパイルしている場合、それは -classpath フラグを使用することを意味します。(CLASSPATH 環境変数は避けてください。これは首の IMO の苦痛です。)

IDE を使用している場合は、どの IDE かをお知らせください。その IDE に固有の手順をお手伝いします。

于 2009-01-20T07:40:38.283 に答える