首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >命令在我打开的终端中是可执行的,但当我使用java函数打开终端并执行它时,该命令不能执行

命令在我打开的终端中是可执行的,但当我使用java函数打开终端并执行它时,该命令不能执行
EN

Stack Overflow用户
提问于 2018-10-07 02:17:06
回答 1查看 58关注 0票数 0

我正在尝试写一个java程序,它可以打开终端并向其输入命令。命令是"wrspice“,它可以启动一个应用程序。我已经在.bashrc中添加了"wrspice“路径,它工作得很好。但是当我使用ProcessBuilder编写java代码来执行时,它会弹出"bash: wrspice: command not found“错误。下面是我的java代码:

代码语言:javascript
复制
final String[] wrappedCommand;
wrappedCommand = new String[]{ "xterm", "-hold", "-e", "wrspice"};
Process process = new 
ProcessBuilder(wrappedCommand).redirectErrorStream(true).start();

当我将"wrspice“替换为"ls”以打印文件列表时,此代码工作正常。但是当我尝试"wrspice“时,它给我的错误是”没有找到命令“。

下面是我如何在.bashrc中添加"wrspice“:export PATH=/usr/local/xictools/bin:$PATH

有谁有什么想法吗?提前谢谢。

EN

回答 1

Stack Overflow用户

发布于 2018-10-07 02:31:10

Java不是一个交互式的shell。改为指定命令的完整路径。而且你不需要new String[]。喜欢,

代码语言:javascript
复制
wrappedCommand = { "xterm", "-hold", "-e", "/usr/local/xictools/bin/wrspice"};

您可能还应该指定xterm的路径。仔细检查你的系统。

代码语言:javascript
复制
wrappedCommand = { "/usr/bin/xterm", "-hold", "-e", "/usr/local/xictools/bin/wrspice"};
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52682034

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档