无法确定当前目录

use*_*559 58 java jvm

我试图运行在Netbeans中成功创建的.jar文件,我收到以下错误:

VM初始化期间发生错误java.lang.Error:属性init:无法确定当前工作目录.at java.lang.System.initProperties(Native Method)at java.lang.System.initializeSystemClass(System.java:1070)

我键入以运行.jar的命令是

java -jar "/path to the dist forlder/EOPPrototype.jar"
Run Code Online (Sandbox Code Playgroud)

我的类路径如下:

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:.
Run Code Online (Sandbox Code Playgroud)

我错过了什么?

asm*_*ier 173

当我尝试java -version在目录中调用时,我看到了同样的错误,我已经从另一个终端会话中删除了该目录.当然在那种情况下java could not determine the current working directory,仅仅因为它不存在.

  • 当我在maven目标目录中发出一个命令时,发生了这种情况:存在,然后我做了一个干净的构建(干净安装),然后发出了相同的命令.即使路径仍然有效,我首先发出命令的特定目录条目不存在(OS X)正在执行cd ../target修复了我的问题 (7认同)
  • 这就是我的情况. (4认同)
  • ..aaand如何解决这个问题? (2认同)

小智 16

解决方案:cd到另一个目录并再次运行该命令,这对我有用.

请参阅此处的说明:https://bugs.openjdk.java.net/browse/JDK-8186434

  • 当您所在的文件夹被删除时会发生这种情况 (2认同)

小智 8

在Fedora 21中,我尝试在卸载后调用"java -version",它给出了上述错误.关闭所有终端并再次打开并尝试.

应该管用.


Joh*_*ark 4

我收到了相同的错误消息,但我不确定这是否与我不使用 Netbeans 的原因相同。我使用我的终端并使用ant.

cd要到一个目录来运行javafile.class文件。我想要运行的文件是一个更大的包的一部分。包的目录结构看起来像这样:a/b/c/javafile.class。、和目录都是较大包a的一部分。bc

为了运行我的javafile.class,我从那里cd进入a并运行文件:java b/c/javafile。在我进行了一些更改并使用ant脚本重新编译后,我所在的目录已被删除并由ant. 因此,当我javafile.class再次运行时,我收到了您遇到的错误。

我通过cd退出已删除并重新创建的目录ant,然后javafile.class再次运行我的目录来解决我的问题。

  • 谢谢。从较高的目录导航到较低的目录,然后重新运行我的命令也为我解决了这个问题。 (2认同)