Java 异常访问冲突?

2024-02-15

我目前正在编写一个 JNI 项目,在尝试运行 Java 代码时收到以下错误日志。它告诉我有问题的框架是 jvm.dll 框架,在尝试隔离问题时,我试图找出我的问题到底在哪里(在 JVM 与我的本机代码中)我已附加了线程日志的一部分,并且可以根据需要附加其余部分。我也尝试过重新安装 JVM。

检测到致命错误 Java运行时环境:

EXCEPTION_ACCESS_VIOLATION (0xc0000005) 在 pc=0x6d8fefb5, pid=720,tid=3128

JRE 版本:6.0_21-b07 Java 虚拟机: Java HotSpot(TM) 客户端虚拟机 (17.0-b17 混合模式,共享 windows-x86 ) 有问题的框架:V [jvm.dll+0xfefb5]

- - - - - - - - 线 - - - - - - - -

当前线程(0x02189000): JavaThread“主”[_thread_in_vm, id=3128,堆栈(0x02120000,0x02170000)]

siginfo:异常代码=0xc0000005, 读取地址0x00000000

寄存器:EAX=0x00000000, EBX=0x02189118,ECX=0x02189000, EDX=0x6da2f76c ESP=0x0216fa84, EBP=0x0216facc,ESI=0x02189000, EDI=0x00000000 EIP=0x6d8fefb5, EFLAGS=0x00010246

堆栈顶部:(sp=0x0216fa84) 0x0216fa84:0216fb38 0216fae4 34497370 0216faa0 0x0216fa94:
6d8010e0 02189000 0216fd34 0216fad0 0x0216faa4:6d906d09 02189000 00000006 00000004 0x0216fab4:
0216fb38 0216fae8 02189000 02189a08 0x0216fac4:000004c4 6da2f76c 0216faf0 57669c1a 0x0216fad4:
02189118 0216fbf0 00000000 0216fb04 0x0216fae4: 0216fb04 cccccccc 0216fb04 0216fb38 0x0216faf4:
576699d3 02189118 0216fbf0 00000000

说明:(pc=0x6d8fefb5) 0x6d8fefa5:00 00 00 74 08 8d 4d f0 e8 1e 20 09 00 8b 7d 10 0x6d8fefb5:
8b 07 c7 45 e0 0c 00 00 00 8b 48 08 0f b7 51 2a

堆栈:[0x02120000,0x02170000], sp=0x0216fa84,免费 space=13e0216f568k 本机帧: (J=编译的Java代码,j=解释的, Vv=VM 代码,C=本机代码)V [jvm.dll+0xfefb5] C [PNMain.dll+0x19c1a] C [PNMain.dll+0x199d3] j PNMain.optimalSideTwist2(ILjava/lang/String;Lvtk/vtkPolyDataAlgorithm;DDDDDD)[D+0 j PNMain.rotateLeftRight(Z)[D+282 j PNMain.main([Ljava/lang/String;)V+92 v ~StubRoutines::call_stub V [jvm.dll+0xf3abc] V [jvm.dll+0x1865b1] V [jvm.dll+0xf3b3d] V [jvm.dll+0xfd385] V [jvm.dll+0x104fdd] C [javaw.exe+0x2155] C [javaw.exe+0x8614] C [kernel32.dll+0x13677] C [ntdll.dll+0x39d42] C [ntdll.dll+0x39d15]

Java 框架:(J=编译后的 Java 代码, j=解释的,Vv=VM 代码)j PNMain.optimalSideTwist2(ILjava/lang/String;Lvtk/vtkPolyDataAlgorithm;DDDDDD)[D+0 j PNMain.rotateLeftRight(Z)[D+282 j PNMain.main([Ljava/lang/String;)V+92 v ~StubRoutines::call_stub


为了使您的调试更容易,我们可以排除 JVM 有问题(在 99.99% 的情况下这不是问题),请查看您的代码。首先简单地删除 JNI 调用并查看机制是否正确完成。然后,在仔细检查所有内存分配和释放后,开始慢慢添加代码片段。您可以使用调试器来访问您的代码,也可以这样做。

也许您可以将 DLL 缩减为产生问题的最小代码段,然后将代码发布到此处,以便其他人运行它并在您遇到困难时查看它?

如果有帮助的话,导致崩溃的方法是optimalSideTwist2。这可能不是导致问题的方法。如果您在不同的方法之间分配内存,您可能会释放不属于您的内存,或者可能会覆盖内存。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Java 异常访问冲突? 的相关文章

随机推荐

  • MongoDB C# foreach BsonElement

    我有一个 C 类 我实例化并使用它在集合中执行 CRUD 操作 public class Property BsonId public long id get set BsonElement address line public stri
  • 无法让 rspec、spork 和调试器发挥良好作用

    Given I am a dumb programmer and I am using rspec and I am using spork and I want to debug mmm let s saaay a spec for Ph
  • JPA 中的引用完整性约束违规错误

    我正在尝试解析网络请求并将其保存到数据库 我有 3 个模型 第一个节点是 virtualDocument 这是uniq表 根据请求url VirtualRequest 表包含所有请求主体 HttpHeaderList 表根据其 virtua
  • 原始 Win32 中的 Rich Edit 控件

    Rich Edit Controls 的文档真的像看起来那样糟糕 错误吗 现在 我正在手动调用 LoadLibrary riched20 dll 以便显示 Rich Edit 控件 Rich Edit 的文档在使用 Rich Edit 控件
  • 下拉列表中页面加载时已选择的选项,也可更改[重复]

    这个问题在这里已经有答案了 可能的重复 PHP 预选择下拉选项 https stackoverflow com questions 3030604 php pre select drop down option 我的 php 项目中有一种情
  • 是否可以将“plt.yticks”放在水平条之间?

    我试图将价值放入plt yticks酒吧之间 不幸的是 我不知道该怎么做 有可能吗 如果有的话 有人可以给一些提示吗 import pandas as pd import numpy as np import matplotlib pypl
  • 从信号图像(RGB)中去除背景“噪音”

    I have some signal images 正如您所看到的 其中一些包含颜色信号 一些只是灰色 黑色信号 我的任务是提取白色背景的纯信号仅有的 这意味着我需要删除图像中除信号之外的所有内容 我检查了虚线 点线 实线 顶部和底部 具有
  • 当我两次启动闹钟时会发生什么?

    我正在克服困难 当然 这并不那么复杂 以避免两次启动警报 基本代码如下 AlarmManager mgr AlarmManager getSystemService Context ALARM SERVICE Intent i new In
  • ElasticSearch 服务启动但无法访问并且不执行任何日志记录

    Azure 中 Linux Ubuntu 16 04 3 VM 上的 ElasticSearch 6 2 2 它一直运行良好 但几天前我重新启动机器后 我根本无法启动 ElasticSearch 服务 问题已在这里分享和解决 Elastic
  • 更改相关产品标题在 WooCommerce 中添加产品名称

    我有这段代码 试图将 相关产品 翻译成 这些产品与产品名称搭配得很好 这是我的代码 add filter gettext change related products title 10 3 function change related
  • 在编译时将 this 指针和类方法的参数传递给本地 lambda 函数

    假设您有一个场景 当您想要创建一个constexprlambda 在编译时计算某些内容的方法中 struct A int a constexpr A int a a a constexpr auto operator const A rhs
  • “if-then-else”(总是)可以被函数调用替换吗?

    这个问题主要是出于对 PL 如何工作的好奇 实际上我是在查看 SML 时想到的 SML 与 Haskell 的不同之处在于前者使用按值调用 但我的问题是关于 Haskell 的 Haskell 据我了解 具有 按需调用 语义 这是否意味着如
  • 快速的射弹并不总是能击中

    因此 对于我的游戏 有一个快速移动的子弹对象 其精灵大小为 5x5 大约 以大约 30 的速度移动 需要撞击厚度仅为 5 像素左右的相对较薄的 Enemy 物体 子弹以一定的固定距离间隔穿过敌人而不会发生碰撞 I think这是因为子弹移动
  • DataMan iPhone 应用程序如何在后台工作

    AppStore 上的 DataMan 应用程序 DataMan Lite 是该应用程序的免费版本 有助于监控您的数据使用情况 http www iphonelife com blog 2686 monitor your data usag
  • matlab如何求解大型、对称和稀疏线性系统

    也就是说 当我这样做时A b对于非常大 对称且稀疏的 A matlab 使用什么算法 如果矩阵是稀疏且对称正定的 但有very窄带 然后使用专门的带解算器 大多数矩阵没有足够窄的带来触发这种情况 通常 它会在样条工具箱中提供一维样条 二维问
  • 评估 MySQL 中的表达式

    我有一个包含 a b expr 列的表 expr 是其他列的表达式 例如表包含 a b expr 2 5 a b 3 4 a b 3 我喜欢简单地运行一个查询并获得流动的结果 a b expr 2 5 7 3 4 15 我在文档中搜索函数
  • SQL在同一字段中搜索多个值

    我正在构建一个简单的search算法 我想打破我的带空格的字符串 并在其上搜索我的数据库 如下所示 search Sony TV with FullHD support search explode search SELECT name F
  • 仅删除 vb.net 中的一个特定事件处理程序

    我正在编写一个小型 2D 引擎 使用 Lua 来控制它 过去一段时间我一直在 Lua 和 VB net 之间设置事件 我意识到 问题是我似乎无法删除那些搞砸了很多事情的事件 因为它们在应该完成的时候被调用 为了解决这个问题 我想添加某种方法
  • Python - Twisted、代理和修改内容

    所以我研究了一些涉及使用 python 和 Twisted 框架编写 HTTP 代理的事情 本质上 像其他一些问题一样 我希望能够修改将发送回浏览器的数据 也就是说 浏览器请求资源 代理将获取它 在资源返回到浏览器之前 我希望能够修改任何
  • Java 异常访问冲突?

    我目前正在编写一个 JNI 项目 在尝试运行 Java 代码时收到以下错误日志 它告诉我有问题的框架是 jvm dll 框架 在尝试隔离问题时 我试图找出我的问题到底在哪里 在 JVM 与我的本机代码中 我已附加了线程日志的一部分 并且可以