所以我一直在谷歌搜索,现在正在寻找这个解决方案3个小时。我以前有一些文件用于此目的,但多年来它们已被删除。
基本上,我有一个名为RiD.jar的.jar文件位于:/ Users / Mom / Desktop / RiD
.jar最近更新了可能允许支持Mac OS X的更改。我已经完成了在Mac OS X环境中测试它的任务。
我需要制作一个双击文件,打开可以添加到初始下载的.jar文件(包含所有包含文件的文件夹的.rar文件,其中一个是RiD.jar)这将适用于所有Mac用户。
无论是使用AppleScript还是其他东西,只要它有效,我很高兴。
为了在您的推荐中创建任何特定的文件类型,请帮我解释用于制作此文件类型的程序以及任何其他相关信息,因为我的OS X编程知识有限。
感谢任何帮助,我们非常欢迎您提出任何问题。
编辑:
以下是我尝试通过终端打开时获得的内容的副本:
我在Mac App Store中包含最新版本的Java(例如Java 6更新41)。
java.io.IOException: Cannot run program "cmd": error=2, No such file or directory
at java.lang.ProcessBuilder.start(ProcessBuilder.java:460)
at java.lang.Runtime.exec(Runtime.java:593)
at java.lang.Runtime.exec(Runtime.java:431)
at java.lang.Runtime.exec(Runtime.java:328)
at Run.main(Run.java)
Caused by: java.io.IOException: error=2, No such file or directory
at java.lang.UNIXProcess.forkAndExec(Native Method)
at java.lang.UNIXProcess.<init>(UNIXProcess.java:53)
at java.lang.ProcessImpl.start(ProcessImpl.java:91)
at java.lang.ProcessBuilder.start(ProcessBuilder.java:453)
... 4 more
编辑:我刚从Oracle网站更新到Java 7更新15,因为需要在浏览器中运行Java applet,该浏览器必须适用于原始RiD.jar文件。我仍然得到与Java 6更新41相同的错误。
编辑:我和开发人员谈过,他在使用OS X时删除了使用cmd。我现在有一个稍微不同的错误:My-Computer:~ Mom$ cd /Users/Mom/Desktop/RiD
My-Computer:RiD Mom$ java -jar RiD.jar
java.io.IOException: Cannot run program "javaw": error=2, No such file or directory
at java.lang.ProcessBuilder.start(ProcessBuilder.java:460)
at java.lang.Runtime.exec(Runtime.java:593)
at java.lang.Runtime.exec(Runtime.java:431)
at java.lang.Runtime.exec(Runtime.java:328)
at Run.main(Run.java)
Caused by: java.io.IOException: error=2, No such file or directory
at java.lang.UNIXProcess.forkAndExec(Native Method)
at java.lang.UNIXProcess.<init>(UNIXProcess.java:53)
at java.lang.ProcessImpl.start(ProcessImpl.java:91)
at java.lang.ProcessBuilder.start(ProcessBuilder.java:453)
... 4 more
enter code here
答案 0 :(得分:0)
错误跟踪似乎表明Java代码调用“cmd”,可能是为了运行一些脚本。如果是这种情况,如果没有对底层Java代码进行一些代码更改,它显然不适用于Mac。
通常,要在Mac上运行JAR文件,需要从Oracle安装Java。在安装之后,应该将jar文件与正常双击的Java启动相关联。
UPDATE(以匹配更新的问题):JAR文件正在尝试调用javaw,这是Java的无控制台运行时。没有看到代码,我不能说它为什么这样做,但它看起来像一个PATH错误。在终端中,尝试编写
which javaw
我的猜测是它找不到javaw的正确目的地。解决方案是您手动编辑环境以包含javaw的路径,如果可以找到它,否则,最简单的方法是从Oracle重新安装Java并查看问题是否消失。
也可能是JAR文件中的脚本假定javaw的路径不正确,例如假设它位于典型的Windows路径中。