在我正在处理的项目中,我需要执行一个脚本,该脚本位于资源文件夹中 - 类路径中。我只是测试最终的脚本功能,因为我在Windows上,我需要一种方法将文件输出到STDIN,所以我创建了一个简单的cat.jar程序来克隆unixs cat命令。尝试使用Runtime.getRuntime()执行Java jar exec()
所以当我做“java -jar cat.jar someFile.txt”时,它会将文件输出到stdout。我确信有做不同的方式做我做的事情。
反正, 我想从我的主要Java程序运行该JAR。 我做
Runtime.getRuntime().exec("java -jar C:/cat.jar C:/test.txt");
我已经试过正斜杠转换为一个反斜杠和逃避它 - 没有工作。 什么都没有发送到标准输出。
因为,如果我自己运行cat jar,我会将文件指向标准输出。
我在这里做错了什么? 这是足够的信息吗?
1)阅读[runtime.exec info。页面(http://stackoverflow.com/tags/runtime.exec/info)。在链接的Java World文章中实现***全部***建议。 2)然后忽略它指'exec'并使用'ProcessBuilder(String [])'构造函数。 3)接下来的第2步可能会给你足够的信息来解决问题,否则它会提供更多的信息让我们能够提供帮助。 – 2013-04-30 14:35:22
我的回答有帮助吗? – 2013-04-30 19:30:16
它确实,我读通过所有的信息,如果它是非常有用的:) – envinyater 2013-05-01 12:03:35