UnsatisfiedLinkError:将Remedy API与Jav​​a配合使用

时间:2011-11-23 23:42:24

标签: java classpath remedy

我正在尝试从this question运行有关使用BMC补救API的示例。但是,当我尝试运行该示例时,我收到以下错误消息,它似乎编译正常。

据我所知,我需要引用arapi71.jar。但是该库实际上位于不同的域中,因此我无法直接引用它。我已将其所在的整个文件夹复制到我的PC并添加到构建路径中,这可能是问题,我是新手使用框架等所以如果这是问题让我知道。

如果那不是问题而且应该可以将所有信息都拉过来并引用它,那么我还能错过什么?这个网站here有一些关于路径等的想法,但似乎它们主要是在Linux上,我不是百分之百确定它与windows上的相关性(顺便提一下,虽然我认为不是与环境变量的区别)。它提到无法找到.dll文件可能是一个问题,这是在文件夹中,所以我认为它仍然可以在那里找到它?

非常感谢任何帮助!

Exception in thread "main" java.lang.UnsatisfiedLinkError: com.bmc.arsys.api.Proxy.ARInitialization()J
at com.bmc.arsys.api.Proxy.ARInitialization(Native Method)
at com.bmc.arsys.api.Proxy.<init>(Unknown Source)
at com.bmc.arsys.api.ProxyJRpcBase.<init>(Unknown Source)
at com.bmc.arsys.api.ProxyJRpc.<init>(Unknown Source)
at com.bmc.arsys.api.ProxyManager.createProxy(Unknown Source)
at com.bmc.arsys.api.ProxyPool.get(Unknown Source)
at com.bmc.arsys.api.PoolingProxyManager.getProxy(Unknown Source)
at com.bmc.arsys.api.ARServerUser.createEntry(Unknown Source)
at CreateEntry.main(CreateEntry.java:34)

1 个答案:

答案 0 :(得分:1)

dann.dev,

从您的堆栈跟踪看来,包含arapi71.jar的目录和所有本机实现都不在Windows路径上。您需要将包含所有jar和dll的目录添加到Windows路径中,以便在运行时找到这些文件。

通常,我运行使用Remedy API的Java应用程序和一个包装批处理文件,该文件在执行应用程序之前将API目录添加到路径中。

类似的东西:

  

设置PATH =%PATH%; <api directory&gt;

     

java <params&gt; MyApp的

应该配置你需要的东西。

希望有所帮助, 编