【发布时间】:2013-04-17 21:35:40
【问题描述】:
我有一个 TCL 文件,它使用 Tcl 的 BWidget 包,我一直将它用作我的程序的 GUI。我现在希望能够从一个单独的 Java 程序加载这个 GUI。我调查过 Jacl 和 Swank,但他们似乎并没有完全按照我的意愿行事。
我已尝试使用 Jacl 进行以下操作,但无法评估文件。在调试时,我可以看到它完成了对我的tcl文件的解析,但是在解析BWidget包的tcl文件时抛出了异常。这是我的 Java 代码:
Interp interp = new Interp();
try {
interp.evalFile("C:\\CTP\\Tcl\\LuxonCtp32.tcl");
} catch (TclException ex) {
int code = ex.getCompletionCode();
System.err.println("command returned bad error code: " + code);
} finally {
interp.dispose();
}
关于如何完成我想做的事情有什么想法吗?有可能吗?
【问题讨论】:
-
有什么异常?
-
在子进程中运行 GUI 可能更容易(参见
java.lang.ProcessBuilder); Java 的子进程处理并不是那么好,但它胜过处理大量未移植的代码! -
@DonalFellows 谢谢你的帮助。我只是在一个子进程中启动了 tcl wish shell 并执行了我的 tcl 脚本。