java.lang.UnsatifiedLinkError:java.library.path中没有frmjapi
我有一个关于eclipse的项目,我正在工作,我在一台XP 32位机器上使用它,我想把这个项目转移到我的PC上,它是Windows7 64位的。我可以无错误地编译我的项目,但当我运行它时,我在线程“main”java.lang.UnsatifiedLinkError中得到错误java.lang.UnsatifiedLinkError:java.library.path中没有frmjapi,java,eclipse,jar,unsatisfiedlinkerror,java.library.path,Java,Eclipse,Jar,Unsatisfiedlinkerror,Java.library.path,我有一个关于eclipse的项目,我正在工作,我在一台XP 32位机器上使用它,我想把这个项目转移到我的PC上,它是Windows7 64位的。我可以无错误地编译我的项目,但当我运行它时,我在线程“main”java.lang.UnsatifiedLinkError中得到错误异常:java.library.path中没有frmjapi。 我在其他帖子中查找了这个错误,但大多数帖子都是关于本机库的,我的项目只包含这个1jar文件。我多次尝试删除项目并将其添加到构建路径,但问题仍然存在。 这个问题背
异常:java.library.path中没有frmjapi
。
我在其他帖子中查找了这个错误,但大多数帖子都是关于本机库的,我的项目只包含这个1jar文件。我多次尝试删除项目并将其添加到构建路径,但问题仍然存在。
这个问题背后的原因可能是什么?原因显然是您的后台库在运行时依赖于本机库,因此,您需要按照错误消息中的建议,将文件
frmjapi.dll
的根目录添加到java.library.path
,方法是在VM参数中添加-Djava.library.path=c:\some\path\to\my\dll\parent\dir
(参见运行配置)
什么是frmjapi.dll
frmjapi.dll
是一个来自Oracle公司的文件,它是Oracle的一部分
开发者frmjapi.dll
位于doracledev10g\bin\frmjapi.dll
中
这些错误通常在处理本机/特定于平台的应用程序(如图形或多媒体应用程序)时出现。您的代码可以很好地编译,因为在编译时它只查找直接的java依赖项,而不查找所有运行时依赖项,如.dll文件。正如您所说,项目已经从32位平台转移到64位平台。确保在eclipse中安装并链接了正确的java版本。另外,请参阅包含的jar文件所需的依赖项(它是否支持64位机器上的功能)。最后,尝试从IDE外部运行项目(确保它具有所有必需的权限) 另一个解决方案(与Oracle窗体的Jdapi问题相关)是在路径中包含文件夹
%Oracle\u HOME%\bin
。
然后,您不需要向java命令行提供-Djava.library.path
参数
在运行Jdapi Java程序之前,我在.bat文件中使用了以下内容:
set ORACLE_HOME=C:\Oracle\Forms12c\products\Oracle_Home
:: Only adds ORACLE_HOME\bin to the PATH if not already present
for %%X in (frmjapi.dll) do (set FOUND=%%~$PATH:X)
if not defined FOUND set PATH=%ORACLE_HOME%\bin;%PATH%
我试图在Windows10中运行jdapi,但遇到了这个问题。我收到的错误消息是frmjapi.dll的“找不到依赖库” 我对这个问题的解决办法如下:
%ORACLE\u HOME%/bin
位于路径中。(这可以解决“java.library.path中没有frmjapi”的问题)
希望这有帮助。我找到了dll文件,但现在我遇到了另一个错误,我想是因为dll是32位的,而我的电脑是64位的。也许你可以问一个不同的问题