gpt4 book ai didi

java - JDIC需要运行哪些文件?

转载 作者:行者123 更新时间:2023-12-01 15:58:07 27 4
gpt4 key购买 nike

我正在尝试调用JDIC从我的应用程序,但我无法让它运行。我需要什么文件以及在哪里?从我从他们的网站收集到的信息来看,我基本上需要将 jdic.jar 放在类路径中...但是还有一个 lib 文件夹,其中包含 jdic.jar 的大小略有不同,以及 jdic_native_applet.jar、jdic_stub_unix。 jar、jdic_stub_windows.jar 和我收集的几个文件夹是特定于平台的文件。

实例化 AssociationService 时出现此异常:

java.lang.ClassNotFoundException: org.jdesktop.jdic.filetypes.internal.AppAssociationReaderFactory_windows
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
at org.jdesktop.jdic.filetypes.AssociationService.<init>(Unknown Source)
at QuickTest.main(QuickTest.java:101)

我已经尝试过最后一个“官方”版本和最后一个 alpha 版本。我运行的是 Java 6 和 Win7 64 位。 JDIC甚至可以在Win7(或64位,尽管我使用32位Java)下工作吗?我看到 2006 年之后没有发布,大约 2008 年之后该项目没有任何 Activity ......而 Win7 是在 2009 年出现的。

我知道 JDIC 的某些部分(例如 Desktop)包含在 Java 6 中,但文件关联的情况似乎并非如此。

如果没有,是否有任何(希望是跨平台的)替代方案来管理文件关联?有一些things for Windows only我尝试过,但这需要以管理员权限运行 native 命令,除了要求用户以管理员身份运行我的应用程序然后使用 Runtime.exec() 之外,我不知道如何提取这些命令...

如果没有 JDIC 的替代品,我很感兴趣是否有人能够通过跨平台安装程序很好地处理文件关联?

更新:好的,计算出其中的一部分... Windows 文件夹中的所有内容都需要位于根文件夹中。然而现在我得到了这个异常,这让我回到了原来的问题:

Exception in thread "main" java.lang.UnsatisfiedLinkError: D:\Sources\TheWorkspace\Test\jdic.dll: Can't load IA 32-bit .dll on a AMD 64-bit platform
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1778)
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1703)
at java.lang.Runtime.loadLibrary0(Runtime.java:823)
at java.lang.System.loadLibrary(System.java:1030)
at org.jdesktop.jdic.init.JdicManager$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at org.jdesktop.jdic.init.JdicManager.loadLibrary(Unknown Source)
at org.jdesktop.jdic.filetypes.internal.WinRegistryWrapper.<clinit>(WinRegistryWrapper.java:36)
at org.jdesktop.jdic.filetypes.internal.WinRegistryUtil.isSubKeyExist(WinRegistryUtil.java:192)
at org.jdesktop.jdic.filetypes.internal.WinRegistryUtil.isFileExtExist(WinRegistryUtil.java:910)
at org.jdesktop.jdic.filetypes.internal.WinRegistryUtil.isFileExtExist(WinRegistryUtil.java:939)
at org.jdesktop.jdic.filetypes.internal.WinAppAssociationReader.isFileExtExist(WinAppAssociationReader.java:163)
at org.jdesktop.jdic.filetypes.AssociationService.getFileExtensionAssociation(Unknown Source)
at QuickTest.main(QuickTest.java:103)

最佳答案

你能重新检查一下你用来运行这个的java吗?该错误通常发生在尝试从 64 位 java.util.dll 加载 32 位 dll 时。 jdic 确实可以在带有 32 位 java 的 64 位 Windows 7 上为我们工作。

关于java - JDIC需要运行哪些文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4641698/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com