我正在尝试更改java工作目录,这意味着,我正在尝试更改user.dir
属性。
例如,下面的代码将在我的user.dir
目录中创建一个名为foo的文件。
FileOutputStream out = new FileOutputStream("foo.txt");
out.write("foo".getBytes());
out.close();
如果我想在另一个目录中创建这个文件,那不是我运行java命令的目录,我需要使用System.setProperty
,在我的情况下我想要
System.setProperty("user.dir", System.getProperty("jboss.server.temp.dir"));
但这不起作用,我认为这是因为我使用的是FileOutputStream
而不是文件
如果我通过eclipse插件运行WildFly,我可以设置一个工作目录路径,这样一切都按预期工作。见图像
我试图将-Duser.dir=%JBOSS_HOME%\standalone\tmp
置于standalone.bat
脚本中,但根本不受影响。
实际工作目录为%JBOSS_HOME%\bin
,即调用java -jar
的地方
我的问题:我怎样才能更改在wildfly上运行并为FileOutputStream
工作的java的工作目录?