Javaに関する様々な情報をご紹介します。

Javaに関する様々な情報をご紹介します。
評価

0

パッケージ読み込みエラーについて

どうしても分からないことに直面してしまいましたので、質問させていただきます・・。

今回。Javaを用いて複素行列の計算プログラムを作ろうと考えまして、以下のサイトからその計算用パッケージ(flanagan.jar)をダウンロードしました。

ttp://www.ee.ucl.ac.uk/~mflanaga/java/ComplexMatrix.html


このパッケージを通常通り\jre\lib\ext\に導入し、以下のような動作確認用プログラムを組んでコンパイルしようとしました。

import flanagan.*;

class sample {
    public static void main(String[] args){

        Complex a1 = new Complex(1.0,2.0);
        Complex a2 = new Complex(2.0,-3.0);

        println(a1);
        println(a2);

        }
}

上のプログラム中のメソッドはパッケージ内のComplex.class中で定義されています。

ところが、パッケージ読み込みエラーが起こってしまい、「パッケージflanaganは存在しません」というエラーが何度も出てきてしまいます・・。

改めてCLASSPATHを直接\jre\lib\ext\flanagan.jarに指定して、set CLASSPATHコマンドで確認後、再びコンパイルしようとしましても、再び同じエラーがでてしまって、もうお手上げ状態です・・。

ソースも確認したのですが、
Package flanagan.〜〜;

という記述が全てのソースに書かれていたので、このパッケージが存在してるのは確かなのですが・・。

環境はJDK1.6.0_10を用いており、パッケージもJDK6に対応したものをダウンロードしています。

どなたかこの原因について何か知っていましたら、是非ご教授いただけないでしょうか・・。

お願いします。

11

回答

3765

閲覧

11件の回答

評価

0

申し訳ございません・・。

ttp://www.ee.ucl.ac.uk/~mflanaga/java/

に直接パッケージのリンクがあります。。

評価

0

別にh抜く必要ないだろう…。

jarの中身確認した?

評価

0

返答ありがとうございます。

中身は確認して、jarファイルの中にはclassファイルとそのソースファイルがありまして、ソースを確認しましてパッケージがすべてflanagan.*;であることを確認しました。
自分の所有している他のPCで同じ作業しても、全く同じエラーがでてしまいます・・。

中からクラスファイルを抜き出し、再びjarに圧縮しましても、同じ症状がでてしまいます・・。。

評価

0

http://book.geocities.jp/bits_of_java/java/vm/jar/

これ、関係ある?

評価

0

それは実行時のことですな。

コンパイル時、つまりjavacはjdkにしかないから、

1. classpathが間違ってる。
2. jdkが2つ以上入ってる。

のようなことが考えられる。
ただ、2については環境変数に指定してある場合は関係ない話になってくる。
javac -classpathで指定するとどう?

評価

0

リンク先にも書いてあるけど、Javaディレクトリはピュアな状態で取っておくほうがいいよ。
アップデートのときに面倒になるだけ。

評価

0

>このパッケージを通常通り\jre\lib\ext\に導入
これでできるのかなぁとおもいまして。

評価

0

先ほど
javac -classpath C:\〜〜\flanagan.jar
で直接指定してみましたが、無効なフラグと出てしまいました・・。
何度も確認しましたので、ディレクトリのパスにミスはないと思うのですが・・・。
これにも何か原因があるのでしょうか・・?

また、\jre\lib\ext\以外の場所からCLASSPATHで指定したほうがいいのでしょうか・・?

無知で申し訳ないですがお願いします。。

評価

0

>無効なフラグ
意味分かってる?

評価

0

>無効なフラグ
拡張子が正しくなく、jarファイルをちゃんと認識してないと意味をとらえていますが、詳しい意味は存知でないです・・無知で申し訳ないです・・。
よろしければご教授いただけないでしょうか・・?

それからsample.javaがあるフォルダで

javac -classpath "c:\Program files\〜〜\lib\ext\flanagan.jar" sample.java

とコマンドを打ち、コンパイルを試みましたが、同じようにパッケージが存在しないとエラーがでてきてしまいました・・。

評価

0

>拡張子が正しくなく、jarファイルをちゃんと認識してない
-classpathなんかのパラメータが認識できない。

質問から6ヶ月以上経過しているので、回答を書き込むことはできません。