我有一个 python 编译脚本(script.pyc,我没有 .py 文件),它在我的 windows 命令提示符下运行良好,我想从我的 Java 应用程序中执行它。我尝试使用 runtime() 方法:
Runtime runtime = Runtime.getRuntime();
runtime.exec(new String[] {"C:\\toto\\tools\\script.pyc" ,"arg","arg2" });
但我收到一个错误:
Exception in thread "main" java.io.IOException: Cannot run program "C:\Nuance\VoCon Hybrid\SDK_v4_3\tools\clctodict.pyc": CreateProcess error=193, %1 n?est pas une application Win32 valid
该脚本在我的终端中运行良好(“arg”是一个 txt 文件,“arg2”是输出名称,脚本可以毫无问题地完成其工作)。
我还尝试使用 getDesktop() 启动我的脚本:
File fie = new File("C:\\toto\\tools\\script.pyc" ,"arg","arg2");
Desktop.getDesktop().open(fie);
没有问题,但我无法添加参数,所以我只能看到一个终端窗口在几秒钟内打开,然后立即消失。我也尝试过使用 JPython,但也没有成功(也许我们不能在 .pyc 上使用方法“execfile”??????)