有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java是运行时。getRuntime()。Exec()环境是否与cmd env不同?

我尝试使用runtime命令从代码中运行jar。jar通过RMI连接到另一个主机。它通过一个异常并退出

但是当我从cmd打开罐子时,它工作得很好

jar得到5个参数

代码:

String runCommand = "java -jar WhiteboardStudent.jar "
        + "192.168.0.3" + " " 
        + "2000" + " " 
        + "2001" + " " 
        + "test" + " 0" ;
final Process proc = Runtime
        .getRuntime()
        .exec(runCommand,null,new File("util/"));

命令提示:

 java -jar WhiteboardStudent.jar 192.168.0.3 2000 2001 test 0

引发异常的代码如下所示:

 Object proxy = registry.lookup("RWD");
 Whiteboard whiteboard = (Whiteboard)proxy;

我只是被难住了。有什么想法吗

引发异常的函数:

Registry registry = LocateRegistry.getRegistry(
                hostname, Integer.parseInt(whiteboardPort)
                );
String serviceName = "RemoteWhiteboard" + sessionID;
Object proxy = registry.lookup(serviceName);
Whiteboard whiteboard = (Whiteboard)proxy;
int userid = whiteboard.userRegistry(userName, "");
Main mainFrame = new Main(sessions, sessionID,
    whiteboard,userid,"");

共 (1) 个答案

  1. # 1 楼答案

    我的建议是尝试代码中的绝对路径:

    String runCommand = "java -jar /c/users/xxx/WhiteboardStudent.jar "
        + "192.168.0.3" + " " 
        + "2000" + " " 
        + "2001" + " " 
        + "test" + " 0" ;