如何从java包运行Applescript

如何从java包运行Applescript,java,swing,shell,applescript,Java,Swing,Shell,Applescript,我正试图像这样在我的系统中运行applescript String cmd = "osascript " + cmdpath + "ReadNeofile.scpt"; UnixComm(cmd); 我使用JavaSwing开发了这个系统,它是一个独立的系统。 代码运行良好,我可以运行applescript并获取输入。我最大的缺点是,要做到这一点,我需要将apple脚本保存在客户端pc中。有什么方法可以从java包调用applescript,因为将脚本保存在客户端pc中并不安全。我担心如果我的

我正试图像这样在我的系统中运行applescript

String cmd = "osascript " + cmdpath + "ReadNeofile.scpt";
UnixComm(cmd);
我使用JavaSwing开发了这个系统,它是一个独立的系统。
代码运行良好,我可以运行applescript并获取输入。我最大的缺点是,要做到这一点,我需要将apple脚本保存在客户端pc中。有什么方法可以从java包调用applescript,因为将脚本保存在客户端pc中并不安全。我担心如果我的客户不小心删除了脚本,我的整个系统将被破坏。请给出建议。

我相信您可以将代码放入一个变量中(在本例中,它被称为codeVar)并转义所有的换行符和引号,然后将代码更改为:

String cmd = "osascript " + cmdpath + "<( echo '" + codeVar + "')";
UnixComm(cmd);
这两种解决方案都要求您使用applescript,并转义返回字符(将其替换为
\n
),可能还需要双引号(如果有的话)(将其替换为
\”

是否尝试过?
PrintWriter out = new PrintWriter("/tmp/myapplescript.scpt");
out.print(codeVar);
String cmd = "osascript " + cmdpath + "/tmp/myapplescript.scpt";
UnixComm(cmd);