问题标签 [runtime.exec]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Java - 使用 runtime.getRuntime().exec 运行 Excel
不工作。我必须输入 excel.exe 的完整路径才能工作。如何使其通用(对于任何 Excel 文件夹/版本)?当我使用 Windows 运行(开始->运行)从操作系统运行同一行时,它可以工作。Java中是否有代码来模拟Windows的运行命令?
java - ProcessBuilder 与 Runtime.exec()
我正在尝试使用 Inkscape 的命令行功能在 Java 中创建一个前端应用程序来处理批量 SVG 转换。我正在从https://sourceforge.net/projects/conversionsvg/获取并更新代码。原始开发人员通过Runtime.getRuntime().exec(String)处理调用 Inkscape 的方式。我遇到的问题是使用methodA和methodB之间的一些不一致。我创建了一个简单的 java 测试项目来演示正在执行的不同操作。
调用者测试.java
RuntimeExecCaller.java
ProcessBuilderCaller.java
结果
两个methodA(String)调用都有效,但是当调用methodB(String[])时,Inkscape 正在启动并且参数传递不正确。在methodB(String[])执行后,我会为每个说法得到一个 Inkscape 错误对话框
加载请求文件失败 -f C:/test.svg -D -w 100 -h 100 -e C:\RuntimeExec-methodB.png
加载请求文件失败 -f C:/test.svg -D -w 100 -h 100 -e C:\ProcessBuilder-methodB.png
当我单击对话框上的关闭时,Inkscape 会弹出一个新的空白文档。所以,我想我有几个问题:
Runtime.getRuntime().exec(String) 和 Runtime.getRuntime().exec(String[]) 有什么区别?
JavaDoc 说Runtime.exec(String)调用Runtime.exec(command, null)(即Runtime.exec(String cmd, String[] envp)),后者又调用Runtime.exec(cmdarray, envp)(即Runtime .exec(字符串[] cmdarray,字符串[] envp))。所以,如果Runtime.getRuntime().exec(String ) 无论如何都在调用Runtime.exec(String[]),为什么我在使用不同的方法时会得到不同的结果?
Java 根据调用的方法以不同方式设置环境的幕后发生了什么?
java - 当你不知道是否有空格时使用 Java 的 exec 命令
我正在与 Java 的 Runtime exec 方法中的空格错误作斗争。这是这个问题的独特之处:我试图执行的命令是一个传入的字符串,可能有也可能没有空格,不一定是任何特定的格式。无论哪种方式,我都需要执行它。如果没有空格,我很好;如果有空格,我就不那么好了。
我如何考虑这两种情况?
无需额外费用的奖励信息:一个大问题似乎是我试图在 c:\program files\blablabla... 中调用一个可执行文件,而 exec 似乎在 'c:\program' . 我相信参数也会出现其他问题。
这是我可能得到的字符串类型的更具体示例。这应该可以消除一些困惑:
- c:\someApp\someapp.exe
- c:\someApp\someapp.exe -someParam=foo
- c:\程序文件\someapp\someapp.exe
- c:\程序文件\someapp\someapp.exe -someParam=bar
第一个工作正常,因为它没有空格。第二个甚至可以,因为它在空间上拆分并使用第一个作为命令,第二个作为参数。第三个和第四个例子在第一个空格上分开,使用'C:\program'和命令'files...'和(在第四个字符串的情况下)'-someParam=bar'作为参数。
java - 使用 Runtime.getRuntime().exec 方法调用 exe 时出错,如果 exe 路径包含非英文字符
我正在使用 Runtime.getRuntime.exec() 方法来调用一个 exe。我用这种方法面临的问题是,当我通过一些 exe 路径(c:\JPN_char_folder\mypath\myexe.exe)和其他语言字符(ex.Japanese)“它说“系统找不到指定的文件”。会你请提出一些想法来解决这个问题?我什至尝试在转换为 UTF-8 后传递那个 exe 路径,但我仍然无法解决这个问题。
-罗伯特。
java - 无法调用 Runtime.getRuntime().exec
我正在运行一个 xSocket 服务器,因此需要启动一个 chat.jar,它似乎没有调用该部分。我的代码有什么问题?
如果我创建一个 xSocketserver.jar,那么 exec 是否能够启动任何外部 jar?
java - java中的Exec方法从不抛出异常
我正在尝试执行诸如 exp 之类的系统命令来备份数据库。但是,如果登录详细信息错误或数据库不存在,则不会引发异常。
我该如何处理这种抛出异常的情况?
欢迎所有乐于助人的人..
问候, 斯瓦鲁巴
java - Runtime.getRuntime().exec - 执行 osql 查询
我正在尝试从 Java 程序执行 osql 命令来恢复数据库,如下所示。
当我调用方法 restore 时,命令提示符被打开,osql 被执行,然后命令提示符变得不可见。
您能否告诉我是否有办法阻止命令提示符关闭?
谢谢你的帮助
java - 如何确定用于启动当前 jvm 的命令?
我打算生一个孩子做一些工作。我想使用与父进程相同的命令行来生成子进程。
例如,如果父级是这样启动的:
然后我会打电话
示例 2:
然后我会打电话
我知道我可以从系统属性中找到类路径。而不是使用 Runtime.exec 我计划使用 ProcessBuilder,它将父环境复制到子环境。但基本上我想使用与父级相同的 java 程序和参数。我没有在系统属性中找到此信息。
java - 运行子进程,在 Java 中正确地为其提供输入和输出
我使用 Runtime exec() 方法在 Java 中创建子进程。但是,由于子流程是一个交互式程序,我需要在需要时为其提供输入。我还需要显示子流程的输出。我怎样才能以最简单的方式做到这一点?
我正在使用 StreamGobbler 使用 process.getInputStream() 显示程序输出。但是,我不知道如何识别程序何时等待输入以及何时使用 proc.getOutputStream 为其提供输入。我怎样才能做到这一点?
java - Runtime.getRuntime().exec(),执行Java类
我正在从我的应用程序内部执行 Java 类。
如何识别是否Test
执行成功(即没有例外)?
重定向输出/错误:
来自cmd
: