java.lang.UnsatisfiedLinkError: %1 不是有效的Win32应用程序错误解决

发现问题

最近工作中利用JNA 调用 dll 库时保错,错误如下:

///////////////// 通过 JNA 引入 DLL 库 ////////////
 /**
  * ID_FprCap.dll 负责指纹的采集, 指纹仪的初始化,设置等等
  */
 public interface ID_FprCap extends StdCallLibrary {
  ID_Fpr fpr = ID_Fpr.INSTANCE ;
  ID_FprCap fprCap = (ID_FprCap)Native.loadLibrary("ID_FprCap", ID_FprCap.class);
  
  /**
   * 初始化指纹采集器
   * @return 成功返回1,分片资源,检查权限,在所有接口函数中,通常首先调用此函数。只需要调用一次,允许重复调用
   * 其结果和一次调用相同。出错调用 LIVESCAN_GetErrInfo获取错误信息
   */
  public int LIVESCAN_Init();
  
  /**
   * 关闭采集器,释放资源. 调用此函数之后,在没有调用 LIVESCAN_Init之前,仅可调用LIVESCAN_GetVersion、LIVESCAN_GetDesc、
   * LIVESCAN_GetErrorInfo函数。调用此函数之后,需要重新调用LIVESCAN_Init来初始化采集器.
   * @return 成功返回1. 出错调用 LIVESCAN_GetErrInfo获取错误信息
   */
  public int LIVESCAN_Close();

我环境是 64 位 win7.

java.lang.UnsatisfiedLinkError: %1 不是有效的 Win32 应用程序。

解决方法:删掉了系统中的 64 位的 JDK,就没有再报该错误了。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。

你可能感兴趣的:(java.lang.UnsatisfiedLinkError: %1 不是有效的Win32应用程序错误解决)