是否可以在启动时设置JVM工作目录?

时间:2013-10-02 19:59:38

标签: java jvm java-native-interface

我正在使用JNI来启动JVM,我无法弄清楚如何设置工作目录。我试过了

options[1].optionString = "-Duser.dir=directory";
vm_args.options = options;

作为我的JNI_CreateJavaVM args的一部分,但它不起作用。 user.dir系统属性设置为我在参数中指定的属性,但FileReader之类的实际相对目录与我用来调用dll的目录相同。有没有办法告诉JVM cwd应该在哪里启动?

2 个答案:

答案 0 :(得分:1)

由于JVM未作为自己的可执行文件启动,因此您的工作目录就是您的基本应用程序所在的位置。

答案 1 :(得分:1)

您可以调用'chdir()',但不建议shell以外的程序执行此操作。只需在启动它之前自己在shell中更改当前目录。