読者です 読者をやめる 読者になる 読者になる

>& STDOUT

主にソフトウェアに関する日々の標準出力+標準エラー出力

どのjavaが動いているのかわからない。

こんぴた的な話


 少し手が空いたので、javaで簡単なユーティリティを書くことにした。したのだけれど、

Exception in thread "main" java.lang.NoClassDefFoundError: number_check/class


 連発。日ごろ敬愛してやまないGoogle先生にこの旨を問い合わせたところ、これが発生する主な原因は以下だそうな。

  • CLASSPATHが通ってない
  • CLASSPATHが合ってない
  • javacとjavaのバージョンが合っていない
  • CLASSPATHが合ってないっつってんだろ

 さっそく、java -version と、javac -J-version と、してみたらビンゴ。
ありがとうございますGoogle先生。でも。

でも。


 javacはさっき自分でpath通したからわかるんですけど、javaの方は、環境変数を何度見直しても、ユーザーにもrootにも、それっぽいのは見当たらないんです。JREJREの字もないのです。


 こんなときUnix系のOSなら迷わずwhichするのでしょうが、そこはWindows。ああもう、かゆい所に手が届かない子っ!

こゆとき。


 ハッカーさんなら自分でサクっと作っちゃうんだろうな。すげえな。というわけで、庶民はその英知の恩恵に与ることにしました。

Which for Windows

 これをsystem32とかに放り込んで、which java

C:\>which java
C:/WINDOWS/system32/java.EXE


 警部っ!ホシが割れましたっ!!
 …なんだよその胡散臭いファイルは。