`
dingherry
  • 浏览: 67211 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

JNA方式调用dll报错:A fatal error has been detected by the Java Runtime Environment:

    博客分类:
  • java
阅读更多
看有人回复,说明也遇到这样的问题。

首先说明下面贴的是我自己开发过程中遇到的log文件内容。

1L问到解决方案,由于是自己做,不具有普遍解决问题的能力。
我这个问题,通过跟踪C++类库(Java与C++联调),发现是库里头报错了,导致返回一个error给Java。然后Java里就报下面这一堆东西~~~

唯一可以借鉴给你的可能是:如果确定不是Java的代码问题,那就要Java与C++联调,到C++里跟踪定位出问题出错的地方,这才可以快速定位和解决。


下面的log俺自己收藏用的,附件你就不要下了~~


关于Java与C++联调:
1)如果Java调用环境与VS环境都在同一个PC上
这是最爽歪歪的情况了。
VS里启动调试时,不是有个选择嘛,选择IE那个选项;然后到eclipse里,调用吧。

2)Java调用环境跟VS环境不在同一个PC上
那就苦逼了~~一个傻瓜而有效的做法是:C++代码里尽量加log。if u r a rookie,please do that: 任何一个可能异常的环节都加上log。
分享到:
评论
5 楼 hw361062491 2013-09-05  
求,解决方案……qq:386831869
4 楼 dingherry 2012-07-21  
wtj_jeson 写道
兄台,我看了你的日志,发现咱俩报的错误几乎一样,所以想问下你错误的原因。再一个java与C++ 怎么联调啊?小弟搞JAVA  刚接触C++  特请教一下。加q 也好 158202883 谢谢啊!

我又更新了一把,你看看有没有帮助~~~
3 楼 wtj_jeson 2012-07-20  
兄台,我看了你的日志,发现咱俩报的错误几乎一样,所以想问下你错误的原因。再一个java与C++ 怎么联调啊?小弟搞JAVA  刚接触C++  特请教一下。加q 也好 158202883 谢谢啊!
2 楼 dingherry 2012-07-16  
pcmlose 写道
什么意思嘛,没解决方案放上来干啥呢


这是以前开发过程中遇到的,后来解决了,没贴上来

1 楼 pcmlose 2012-06-28  
什么意思嘛,没解决方案放上来干啥呢

相关推荐

    JNA方式实现Java调用dll的必用jar包

    标题"JNA方式实现Java调用dll的必用jar包"指的是使用JNA库来调用Windows平台上的动态链接库(.dll文件)所需的Java类库。这个"jna5.jar"文件是JNA的一个版本,其中包含了所有必要的组件,使得Java程序能够通过JNA...

    JNA调用DLL完整实例demo

    总结来说,JNA为Java开发者提供了一种方便的方式来调用本地库,而无需深入JNI的复杂性。通过定义Java接口并使用`Native.load`方法,我们可以轻松地集成DLL功能到Java应用程序中。在处理“JNA调用DLL完整实例demo”时...

    java用JNA调用dll实例,包含各种参数调用

    Java Native Access(JNA)是Java平台上的一个开源库,它提供了直接调用系统DLL函数的能力,无需编写C代码或者使用JNI(Java Native Interface)。本实例将深入探讨如何使用JNA调用DLL,并涵盖了各种参数类型,包括...

    Jna调用dll实例

    一旦接口定义完成,JNA会自动处理底层的内存管理和参数转换,使得Java可以直接调用C风格的函数,包括存在于DLL中的函数。 在本实例中,你可能会看到一个名为`JNATest`的类,这个类通常会定义一个接口,这个接口对应...

    jna jar实现java调用dll

    Java Native Access(JNA)是一种在Java中调用本地库(如DLL文件)的框架,无需编写C语言的桥接代码或使用Java的本机接口(JNI)。它提供了一种简单的方法来映射函数调用,数据类型和结构,使得Java开发者能够方便地...

    JNA java调用dll

    在描述中提到的“最简单的方式”和“完全不用开发c++代码”,意味着JNA提供了一种相对简便的接口定义方式,使得开发者无需编写额外的JNI(Java Native Interface)代码,就可以直接调用DLL中的函数。JNI虽然功能强大...

    使用JNA替代JNI调用DLL,并解决内存溢出问题

    ### 使用JNA替代JNI调用DLL,并解决内存溢出问题 #### 问题背景 在项目的开发过程中,常常遇到需要处理二进制流数据并对其进行解析处理的情况。这种情况下,如果上层应用平台采用的是Java开发,而底层算法或数据...

    JAVA利用JNA调用DLL

    通过上述方式,你可以使用JNA轻松地在Java中调用C DLL,无论是32位还是64位,无需编写复杂的JNI代码。在实际应用中,确保正确配置项目依赖,如添加JNA库的jar文件,并注意与本地库的兼容性问题。JNA测试项目"JNATest...

    最简单的JNA调用DLL

    标题中的“最简单的JNA调用DLL”是指Java Native Access(JNA)库在Java程序中调用Windows Dynamic Link Library (DLL) 文件的一种基础方法。JNA是Java平台上的一个开源库,它允许Java代码与本地平台API进行交互,...

    通过JNA让Java调用Dll方法

    研究java调用dll的时候,大部分都是通过jni,比较麻烦,我找到了通过jna方法调用dll的方法,用起来比较方便,只需要引用jna.jar包,这个jar包已经包含在程序中,还包含了我调用dll的遇到难道的解决办法。

    java jna 调用dll例子

    在本例中,“java jna 调用dll例子”指的是使用JNA在Java应用程序中调用Windows上的动态链接库(DLL)文件,这里特别提到了大华SDK的Dll,这通常用于处理视频流和视频播放功能。 大华SDK( Dahua Software ...

    亲测可用,java 成功调用dll函数。包含调用回调函数,springboot版本。最近由于公司业务需要,要调用dll文件,用JNA调用。

    JNA(Java Native Access)是Java平台上的一个库,它允许Java代码直接调用本机库(如DLL文件)的函数,而无需编写JNI(Java Native Interface)代码。在Spring Boot项目中集成JNA,可以方便地实现Java应用程序对DLL...

    JNA调用.dll文件或.so动态链接库的代码demo

    总的来说,JNA为Java开发者提供了一种便捷的方式来调用本地系统功能,而无需深入学习底层的C/C++编程。通过理解JNA的工作原理和使用技巧,开发者可以充分利用Java的跨平台特性,同时享受到本地API的强大功能。

    jna调用C++dll

    Java Native Access(JNA)是Java平台上的一个开源库,它允许Java代码直接调用操作系统提供的原生API,而无需编写JNI(Java Native Interface)代码。这个技术在处理跨平台的系统集成、底层硬件访问或者利用已有的C/...

    java调用C#封装的dll(jna,com)

    java调用C#封装的dll(jna,com)java调用C#封装的dll(jna,com)java调用C#封装的dll(jna,com)

    JNA 调用dll jna调用 c++

    Java Native Access(JNA)是Java平台上的一个开源库,它允许Java代码直接调用操作系统提供的原生函数,而无需编写C语言的中间接口(JNI)。JNA通过映射Java方法到本地库中的函数,实现了Java与C/C++等本地代码的...

    jna调用系统dll文件并且获得返回参数的实例

    采用java jna4.1 调用C编写的dll文件,获得返回结果,且获得返回参数的例子

    jna调用dll完成demo实例, 超简单

    Java Native Access(JNA)是Java平台上的一个开源库,它允许Java代码直接调用操作系统提供的本地库函数,而无需编写任何C/C++代码或使用JNI(Java Native Interface)。本实例将详细介绍如何使用JNA调用DLL动态链接...

    [测试通过]JAVA调用第三方DLL的简单方法:JNA及DEMO

    在IT行业中,有时我们需要在Java程序中调用第三方的DLL(动态链接库)文件,这通常是C或C++编写的库。Java Native Access (JNA) 是一个流行的开源框架,它允许Java代码直接调用本机库函数,而无需编写JNI(Java ...

Global site tag (gtag.js) - Google Analytics