【问题标题】:SWT: UnsatisfiedLinkError, cannot load x64 SWT library on 32-bit JVMSWT:UnsatisfiedLinkError,无法在 32 位 JVM 上加载 x64 SWT 库
【发布时间】:2011-06-19 23:40:47
【问题描述】:

起初在开发我的程序时,我遇到了这个错误;它告诉我不能在 64 位 JVM 上使用 32 位 SWT 库。所以我去找了 64 位库并使用了它。现在,当我在另一台具有 32 位操作系统的计算机上运行我的程序时,它会给出错误。不管你是 32 位还是 64 位操作系统,有没有办法让 SWT 运行?

【问题讨论】:

    标签: java 64-bit swt 32-bit


    【解决方案1】:

    您必须在产品中包含这两个版本,以便无论架构如何,都可以使用正确的版本。您还可以包含 Linux 和 Mac 版本,以使您的产品真正具有便携性。

    【讨论】:

    • 我该怎么做?我尝试将两者都添加到构建路径中,但这在我的 x64 机器上破坏了它。
    • 这在你在 OSGi 中运行时有效,而不是在你在外部运行时 :-)
    【解决方案2】:

    每组 SWT 库的构建路径都不同,因此您必须为希望运行应用程序的每个操作系统制作单独的版本。为此,请配置构建路径,以便仅包含 JRE 和特定于平台的库,然后制作一个可运行的 jar(Eclipse 非常适合此操作)。这很乏味并且违背了 Java 范式,但它是唯一的方法(据我所知)。

    【讨论】:

    • 但这很奇怪。几个月前,我可以发誓我在一个可以在 64 位和 32 位机器上完美运行的程序中使用了 32 位版本的 SWT。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-07
    • 2011-05-23
    • 2023-04-08
    相关资源
    最近更新 更多