关于RAD中使用DEBUG提示“无法创建 Java 虚拟机”的解决办法

今天使用RAD来DEBUG的时候,出现下面的错误:

JVMJ9TI002E Agent_OnLoad not found in library jdwp
JVMJ9VM015W Initialization error for library j9jvmti23(-3): JVMJ9VM009E J9VMDllMain failed
Java 仮想マシンを作成できませんでした。


查了很多资料都文不对题,讲了解决办法都不好用。关于原因也没有说清楚。
最后终于在一个强人的BLOG中找到了解决办法。
原因:
[quote]RAD的JDK与其他JDK冲突。在我的机器上是由于ORACLE的JDK与RFT的JDK冲突导致的。[/quote]

解决办法:
[quote]进入C:\Program Files\Oracle\jre\1.3.1\bin中,该目录下会有一个jdwp.dll文件,将该文件删除或者改名即可。修改完毕后再次进入RFT后,DEBUG功能就可以正常使用了。[/quote]


需要注意:
[quote]C:\Program Files\Oracle\jre\1.3.1\bin\并非是ORACLE的安装目录,例如我本机上安装目录是C:\oracle,那么我们要修改的不是C:\oracle的文件,是XP系统program files下的oracle目录,切记。
[/quote]

我按照上面说的方法试了一下,果然好用。

强人BLOG还作了一下说明:
[quote]将jdwp.dll修改或删除后不会对ORACLE数据库的使用造成任何影响。网络上有关与jdwp.dll文件的介绍并不是很多,我只是知道JDWP 定义了JVM与调试客户端之间的通讯协议,从这里判断ORACLE的jdwp.dll文件也是和debug功能相关的。[/quote]

我查了一下,也没有弄明白jdwp.dll时干吗的,真的没有影响吗,还很疑问。

[size=x-small][color=orange]不知道有没有别的办法解决这个冲突问题。[/color][/size]

[size=x-small][color=blue]望各位路过的大侠拔刀相助。先在此谢过:)[/color][/size]
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 在 Unity 使用 Debug.DrawLine 画一个圆的代码如下: ``` using UnityEngine; public class DrawCircle : MonoBehaviour { public float radius = 1.0f; // 圆的半径 public int segments = 36; // 圆周分成的线段数 void OnDrawGizmos() { // 从 0 开始计算每个线段的角度 float angle = 0f; // 角度每次增加的量 float angleStep = 360f / segments; // 设置起点 Vector3 lastPoint = Vector3.zero; // 遍历每个线段 for (int i = 0; i <= segments; i++) { // 计算线段的终点 Vector3 point = new Vector3(Mathf.Sin(angle * Mathf.Deg2Rad), 0, Mathf.Cos(angle * Mathf.Deg2Rad)) * radius; // 画出线段 Debug.DrawLine(lastPoint, point, Color.red); // 更新起点和角度 lastPoint = point; angle += angleStep; } } } ``` 使用方法: 1. 创建一个新的 C# 脚本,将上面的代码复制粘贴到脚本。 2. 将脚本挂载到你想要在其画出圆的游戏物体上。 3. 在场景视图,选择游戏物体,并在 Inspector 窗口调整圆的半径和线段数。 4. 运行场景,可以看到圆已经画出来了。 注意:Debug.DrawLine 只会在 Scene 视图绘制出来,不会出现在游戏。 ### 回答2: 在Unity使用Debug.DrawLine函数画一个圆的代码如下: ```csharp using UnityEngine; public class CircleDrawer : MonoBehaviour { public int numPoints = 100; public float radius = 1f; public Transform center; private void Start() { // 计算圆上的点坐标 Vector3[] points = new Vector3[numPoints]; for (int i = 0; i < numPoints; i++) { float angle = Mathf.PI * 2f * i / numPoints; float x = center.position.x + Mathf.Cos(angle) * radius; float y = center.position.y + Mathf.Sin(angle) * radius; points[i] = new Vector3(x, y, center.position.z); } // 绘制圆上的连线 for (int i = 0; i < numPoints - 1; i++) { Debug.DrawLine(points[i], points[i + 1], Color.red); } // 绘制最后一个点和第一个点之间的连线 Debug.DrawLine(points[numPoints - 1], points[0], Color.red); } } ``` 以上代码创建了一个CircleDrawer类,通过在Unity编辑器设置numPoints(确定圆上点的数量)和radius(确定圆的半径),并指定一个Transform类型center(确定圆心)来在游戏开始时在场景绘制一个圆。代码首先计算圆上的点的坐标,然后使用Debug.DrawLine函数来绘制这些点之间的连线,从而形成一个圆。最后一条连线是从最后一个点到第一个点,以闭合圆的形状。在Unity游戏运行时,这个脚本将在场景绘制一个红色的圆。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值