我已经下载了最新的com4j jars,我正在尝试运行他们最简单的示例。
我使用的是64位Windows 7,使用的是64位JVM。
当我运行该命令(来自com4j教程)时:
java -jar tlbimp.jar -o wsh -p test.wsh %WINDIR%\system32\wshom.ocx我得到了:
Exception in thread "main" java.lang.UnsatisfiedLinkError: com4j-amd64.dll: %1 is
not a valid Win32 application
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary0(Unknown Source)
at java.lang.ClassLoader.loadLibrary(Unknown Source)
at java.lang.Runtime.load0(Unknown Source)
at java.lang.System.load(Unknown Source)
at com4j.COM4J.loadNativeLibrary(COM4J.java:569)
at com4j.COM4J.<clinit>(COM4J.java:522)
at com4j.tlbimp.driver.Lib.getLibid(Lib.java:90)
at com4j.tlbimp.driver.Driver.addLib(Driver.java:38)
at com4j.tlbimp.driver.Main.doMain(Main.java:123)
at com4j.tlbimp.driver.Main.main(Main.java:56)
Exception in thread "Com4J shutdown hook" java.lang.NoClassDefFoundError: Could
not initialize class com4j.COM4J
at com4j.COM4J$3.run(COM4J.java:476)java代码在jar旁边提取"com4j-amd64.dll“。
发布于 2012-06-09 04:43:53
最新版本刚刚发布:
http://kohsuke.org/2012/04/27/com4j-updates/
https://github.com/kohsuke/com4j/downloads
用这个解决了我所有的问题。
发布于 2012-07-11 01:48:58
您有两个选择:
发布于 2012-05-08 16:58:36
我一开始也有类似的结果。我发现com4j生成的com4j-amd64.dll是空的。补救方法是从com4j jar文件中提取该文件,并通过手动操作将其放入相关目录中。Com4j将不会自动生成该文件,因为该文件已经存在。因此检查文件是否为空作为第一步-Carl
https://stackoverflow.com/questions/10342765
复制相似问题