绝对路径下程序位于D:\project\MyEclipse 8.5\MyTest\bin\G02\TestInOut\MyTest
在Eclipse中,D:\project\MyEclipse 8.5为workspace路径 这个程序位于项目MyTest中,含包的全名为G02.TestInOut.MyTest 直接运行这个程序没什么问题.
在cmd中进入D:\project\MyEclipse 8.5\MyTest\bin> java G02.TestInOut.MyTest 运行也没问题.
可为什么在MyTest中另一个程序G02.TestInOut.Test
通过Runtime.getRuntime().exec("java bin\\G02.TestInOut.MyTest");调用就没有反应呢?
这个路径应是怎么样的呀?也就是说我怎么样用程序Test打开程序MyTest
   Runtime.getRuntime().exec("java MyTest"); 我试过
   Runtime.getRuntime().exec("java G02.TestInOut.MyTest");我也试过
   Runtime.getRuntime().exec("java MyTest\\bin\\G02.TestInOut.MyTest");都试过
用eclipse 运行程序的时候是将项目文件夹作为当前文件夹,还是用Bin作为当前文件? 或者设置的workspace作为当前文件夹?

解决方案 »

  1.   

    eclipse运行程序时是以项目文件夹作为当前文件夹,有相对路径和绝对路径两种方式调用。
    如果采用相对路径,则调用如下:
    java bin/G02.TestInOut.MyTest
    如果是绝对路径,则调用如下:
    java D:\\project\\MyEclipse 8.5\\MyTest\\bin\\G02\\TestInOut\\MyTest\\G02.TestInOut.MyTest
      

  2.   

    这样的话,你可以如下写法:Runtime.getRuntime().exec("java -cp D:\\project\\MyEclipse 8.5\\MyTest\\bin G02.TestInOut.MyTest");
      

  3.   

    感谢一楼和三楼的提醒
    Runtime.getRuntime().exec("java -cp bin G02.TestInOut.MyTest");这样就没问题了.