72

Netbeans で正常に作成された .jar ファイルを実行しようとすると、次のエラーが表示されます。

VM java.lang.Error の初期化中にエラーが発生しました: プロパティ init: 現在の作業ディレクトリを特定できませんでした。java.lang.System.initProperties(Native Method)で、java.lang.System.initializeSystemClass(System.java:1070)で

.jar を実行するために入力するコマンドは次のとおりです。

java -jar "/path to the dist forlder/EOPPrototype.jar"

私のクラスパスは次のとおりです。

CLASSPATH=/opt/netbeans-7.1.2/ide/modules/ext/mysql-connector-java-5.1.13-     bin.jar:/h/USERS/local/pagola/NetBeansProjects/mylib/dist/mylib.jar:/h/USERS/local/pagola/NetBeansProjects/EOPPrototype/build/classes:.

私は何が欠けていますか?

4

11 に答える 11

202

java -version別の端末セッションから既に削除したディレクトリ内で呼び出そうとしたときに、同じエラーが発生しました。もちろん、その場合 java could not determine the current working directory、単に存在しなかったためです。

于 2013-01-25T10:44:29.360 に答える
11

Fedora 21 では、アンインストール後に「java -version」を呼び出してみましたが、上記のエラーが発生しました。すべての端末を閉じてから、もう一度開いて試してください。

動作するはずです。

于 2015-03-31T14:08:21.180 に答える
4

同じエラー メッセージが表示されましたが、Netbeans を使用していないのと同じ理由かどうかはわかりません。私は自分の端末を使用し、でコンパイルしantます。

ファイルをcd実行するためにディレクトリに移動しました。javafile.class実行したいファイルは、より大きなパッケージの一部です。パッケージのディレクトリ構造は次のようになりますa/b/c/javafile.class。、abおよびcディレクトリはすべて、より大きなパッケージの一部です。

my を実行するにはjavafile.classcdそこaからファイルを実行しました: java b/c/javafile. いくつかの変更を加えてantスクリプトで再コンパイルした後、私がいたディレクトリは によって削除され、再作成されていましたant。そのため、javafile.classもう一度実行すると、エラーが発生しました。

cd削除されて再作成されたディレクトリを削除してからant、再度実行することで問題を修正javafile.classしました。

于 2012-06-29T12:06:34.770 に答える
3

同じエラーが発生しました-

VM の初期化中にエラーが発生しました

java.lang.Error: プロパティ init: 現在の作業ディレクトリを特定できませんでした。

「java -version」を実行するだけです (「あなたのバージョンは?」などの簡単な質問に答えるために仮想マシンを起動する必要はないと思うでしょう)。

pwd のディレクトリ パスの上位要素 (スラッシュの間) にスペースが含まれていました。現在の作業ディレクトリを / から下にスペースがないものにすると、「java -version」コマンドで適切な応答が得られました。

彼らがプログラムしたときに、スペースを含むディレクトリを考慮していなかったと結論付けています。しかし、それはバージョン1.7でした。バージョン 8 をロードしたので、修正されていることを願っています。

于 2014-08-14T23:00:52.997 に答える
-1

「java -version」またはその他の java コマンドを読み取り専用ディレクトリから発行すると、このエラーが発生することがあります。たとえば、centos で openjdk 8 を使用する場合 (root 以外のユーザーとして):

cd /usr/bin
java -version

VM java.lang.Error の初期化中にエラーが発生しました: プロパティ init: 現在の作業ディレクトリを特定できませんでした。

于 2016-11-30T05:17:13.687 に答える