java mac sh_如何创建AppleScript或Command文件以在Mac OS上启动Java应用程序?
我创建了一个
Java应用程序,需要准备它在任何操作系统上运行.对于Windows,我创建了一个类似于launch-win32.bat的批处理文件:
@echo off
javaw -Xss1024k -Xmn256m -Xms512m -Xmx1024m -cp lib/*;bin/myjar-latest.jar my.package.MyMainClass
对于linux,我创建了一个类似于launch-linux.sh的shell脚本:
#!/bin/sh
java -Xss1024k -Xmn256m -Xms512m -Xmx1024m -cp lib/*:bin/myjar-latest.jar my.package.MyMainClass
现在我认为MacOS与linux非常相似,因为它们都是基于unix的,我问一个带mac的朋友尝试运行shellscript来启动我的应用程序.但它失败了以下NoClassDefFoundError:
Exception in thread "main" java.lang.NoClassDefFoundError: my/package/MyMainClass
Caused by: java.lang.ClassNotFoundException: my.package.MyMainClass
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
看起来java命令的语法不正确,因为类路径未正确添加到java程序中.我现在的主要问题如下:
> Sun / Oracle没有正式支持MacOS,这就是为什么很难找到一些好的文档. (我需要最新的JRE 7).
>我从未使用任何Mac或没有任何试用它如何工作.
所以现在我的问题是:
>如何在MacOS中从命令行运行java,正确的语法是什么?或者为什么上面的命令不起作用? (例如,Windows和Linux之间的主要区别是使用分号;而不是使用冒号:类路径的分隔符.)
>应该如何命名MacOS脚本文件? .sh或.scpt或.command或者就像在Linux中一样,只要你chmod x脚本文件,文件结尾无关紧要?
谢谢你的任何提示.
总结
以上是生活随笔为你收集整理的java mac sh_如何创建AppleScript或Command文件以在Mac OS上启动Java应用程序?的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: 2023新一代人工智能(深圳)创业大赛评
- 下一篇: java代码解锁华为_如何编写可怕的Ja