Windows批处理文件>似乎修改了.bat文件中java命令的输入

时间:2016-10-28 18:19:26

标签: java windows batch-file

我有一个包含java调用的Windows .bat文件。 java调用看起来像这样:

java -Dfile.encoding=Cp437 -jar name.jar -p "path\filename.prop"

filename.prop文件包含java程序使用的几个参数。 我直接从命令窗口运行这个.bat文件。

只要我允许它将日志输出到命令窗口,.bat文件就可以正常工作。但是,如果我添加日志的重定向,则会导致错误,表明它没有查找-p参数中定义的文件,因为它应该是。

所以:

myfile.bat - 有效,但将日志信息写入命令窗口

myfile.bat > filename.log - 立即停止并将错误写入命令窗口。

myfile.bat > filename.log 2>&1 - 立即停止并将错误写入日志文件。

产生的错误是:

java.io.FileNotFoundException:path \ filename.prop(系统找不到指定的路径)

其中path \ filename.prop不是.bat文件中-p参数的值。 (注意:我没有编写正在调用的java程序。我怀疑我在错误中看到的path \ filename.prop的值可能是从测试时间在程序中硬编码的,但我不是一定。)

如何重定向日志输出会对.bat文件中java调用读取的参数产生影响?它是否以某种方式阻止了来自"看到" -p参数?我错过了什么?

我需要更改以允许java调用在.bat文件中使用-p参数吗?

0 个答案:

没有答案