java - Jar 可在 Windows 中运行,但不能在 Linux 中运行

标签 java linux windows jar

我用外部库制作了一个可运行的 jar。在 Windows 下,我使用 bat 文件来运行应用程序 (java -Djava.library.path=./dist/lib -cp ./dist/Navegador.jar; navegador.Main) 并且它工作正常。

我创建了一个 sh 文件来在 Linux 下运行该应用程序,但在尝试在终端中执行它时出现以下错误:

线程“AWT-EventQueue-0”中出现异常 java.lang.NoClassDefFoundError: chrriis/dj/nativeswing/NativeSwing

我的Manifest.mf是这样的:

类路径:lib/DJNativeSwing-SWT.jar lib/DJNativeSwing-SWTAPI.jar lib /DJNativeSwing-SWTCore.jar lib/MozillaInterfaces-1.8.1.3.jar lib/DJNa tiveSwing.jar lib/swt.jar

为什么这个 jar 在 Linux 下不起作用?

最佳答案

你有一个或两个lib目录吗?你有

-Djava.library.path=./dist/lib

但你也有

 lib/DJNativeSwing.jar

这是否意味着您有 dist/liblib 目录,还是它们应该相同?

关于java - Jar 可在 Windows 中运行,但不能在 Linux 中运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14317527/

相关文章:

java - 在 Windows 上安装 Elasticsearch 时出错

java - 使用 hibernate 参数设置 Postgresql 架构

java - 这种 zip 方法有什么问题吗?

windows - 如何使用 Delphi 启动应用程序并获取它的句柄?

php - ZF2 通过 Composer 安装得到错误的 PHP 版本

java - Swing 组件如何考虑我的默认区域设置?

linux - 如何将正则表达式表示的文件列表输入给 bash 脚本

与另外两个进程的通信进程

linux - 为什么这个 shell 脚本不起作用?

python - 无法启动 Windows 快捷方式