m2eclipse を使用してプロジェクトのビルドを行う際に FileNotFoundException が発生する問題
私は、Java アプリケーションの開発を行う際に統合開発環境 (IDE) として Eclipse を使用しており、プロジェクト管理ツールとして Apache Maven 2 を使用しています。 また、Eclipse から Maven 2 を使うために m2eclipse (Eclipse のプラグイン) を使用しています。
んで今日は別の PC に新たに Java の開発環境を構築したのですが、プロジェクトのビルドをしようとすると FileNotFoundException が発生してビルドができないという問題に直面しました。 表示されたメッセージは以下。
java.io.FileNotFoundException: C:\Documents and Settings\nobuoka\繝?せ繧ッ繝医ャ繝予eclipse galileo\configuration\org.eclipse.osgi\bundles\312\1\.cp\org.maven.ide.eclipse.cliresolver.jar
at org.codehaus.plexus.classworlds.launcher.Configurator.configure(Configurator.java:333)
at org.codehaus.plexus.classworlds.launcher.Launcher.configure(Launcher.java:131)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:404)
at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:351)
at org.codehaus.classworlds.Launcher.main(Launcher.java:31)
10 時間ぐらい色々悩んでいたんですが、結局、Eclipse のパスに非 ascii 文字が含まれているとダメだということがわかりました。 m2eclipse なんて使ってる人あんまり居なさそうだけど、m2eclipse を使う場合は Eclipse の置き場所にご注意ください。
例外が発生した PC の環境は以下です。
Eclipse を起動しようとすると 「JRE が見つからない」 と怒られてしまう問題
問題
JDK のバージョンを新しくして、Eclipse を起動しようとすると
A Java Runtime Environment (JRE) or Java Development Kit (JDK) must be available in order to run Eclipse. No Java virtual machine was found after searching the following locations:と怒られてしまった。 要約すると 「JRE or JDK が見つからない」 ということ。
C:\Program Files\Java\jdk1.6.0_07\jre\bin\javaw.exe
"C:\Program Files\Java\jdk1.6.0_07\jre\bin\javaw.exe" というのがアップデート前のパス。 アップデート後は "C:\Program Files\Java\jdk1.6.0_14\jre\bin\javaw.exe" なので、当然古いパスでは見つかるはずもない。 問題はなんで古いほうのパスを見に行くのかということで、システムの環境変数をチェックしてみるも問題なし。 ネットで調べてみるも、「Eclipse が (同様のエラーメッセージで) 起動しない」 という問題に対して 「環境変数に JDK or JRE へのパスを追加する」 という対処法しかなくてちょっと困ってしまった、というお話。
ちなみに OS は Windows XP SP3 HomeEdition。