问题标签 [jawt]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
1308 浏览

java - 本机 JNI/JAWT Swing 应用程序在 Java 6 上成功运行,但在 Java 7(64 位 Windows 7 操作系统)上失败

我想我对自己遇到的问题有一个不错的认识,但我想知道是否有人对正在发生的事情有更深入的了解。这可能与尝试使用 jawt-on-64-bit-windows-7-os 有关

我有一个相当简单的 Java GUI 应用程序,我正在尝试将 Windows HWND 安装到它上面,这样我就可以附加一个孩子。基本上,我注意到的是,每当我在本机代码中使用 JAWT 资源时,它都会崩溃。它甚至不一定会在我的代码上崩溃,甚至不必点击 JAWT 代码。在jawt.dll/jawt.lib 中链接似乎就足够了。例如,sun.java2d.loops.DrawGlyphListLCD.DrawGlyphListLCD(Lsun/java2d/SunGraphics2D;Lsun/java2d/SurfaceData;Lsun/font/GlyphList;)V+0当我的 Swing GUI 被渲染时,我在 Java 的 fontmanager.dll 中的类中看到了许多崩溃。完整hs_err_pid9108.log可用:http: //pastebin.com/2QS0fDuf

一些有趣的笔记:

  • 如果我将 JRE 切换到 Java 1.6.0_33 而不是 Java 1.7.0_05,则应用程序不再崩溃
  • 如果我在本机代码中删除所有对 JAWT 的引用,应用程序将不再崩溃
  • 如果我删除所有业务逻辑,只在本机代码中实例化 JAWT,它仍然会崩溃
  • 我什至实际上不必在我的代码中进行本机调用。加载链接到jawt.libvia的 DLLSystem.load(...)就足够了。我的应用程序在渲染其 GUI(使用 JRE 7)时仍会崩溃。

我已经尽可能地将代码提炼成一个仍然会失败的例子。这是Java类:

JawtTestApp.h(本机头文件)

JawtTestApp.cpp(本机实现)

JawtTestApp.h(Java 文件)

请记住,编译时必须包含 JDK/include 和 JDK/include/win32,链接时必须包含 JDK/lib/jawt.lib。

我仍在进行跨平台、JDK 等的测试,但是基于这些信息,有人有什么想法吗?我缺少一个神奇的编译器标志吗?有Java补丁吗?我在这里没有想法了。

这是我的系统信息:

=======================================

更新

似乎这只是使用 Swing 组件的问题。如果我将上面的示例更改为使用 AWT 组件(将 JFrame 切换为 Frame),应用程序将成功运行。

0 投票
1 回答
321 浏览

java - 使用 MinGW64 的 JAWT 应用程序无法运行

尝试运行 JAWT/JNI 应用程序。

我在 Windows 7 x64 上使用 jdk1.6.0_31 和MinGW64 。编译顺利,但仍然无法运行应用程序。JAWT_GetAWT()在我添加功能之前没有问题。

问题是我是 C/C++ 编程语言的新手。

本机.java

生成的 Native.h

本机.c

来自这里的GCC 编译命令行

应用程序给出 java.lang.UnsatisfiedLinkError:

请帮忙!

0 投票
0 回答
116 浏览

linux - 关于 Linux 上的 libjawt.so GetComponent 的信息

我试图找出 libjawt.so 的 GetComponent 方法的第二个参数究竟需要什么才能返回组件。如果有人可以向我指出此方法的文档,那将非常有帮助。
谢谢

0 投票
1 回答
1460 浏览

java - mac 上无法获取 JAWT 接口错误

我正在尝试运行 JBullet 库的基本演示。但是它给出了找不到 JAWT 接口的说法。它在 Windows 8 Pro 和 Ubuntu 13.10(我已经在我的笔记本电脑上测试过)上运行良好,但在运行 OS X 10.8.5 和 Oracle Java 7 的 Mac 上却不行。

在此处输入图像描述

这是完整的例外。

有人能说一下是什么原因吗?

谢谢。

0 投票
1 回答
916 浏览

java - Java JNI JAWT 错误未解析的外部符号 __imp__JAWT_GetAWT@8

好吧,我目前正在做一个类似于 JOGL 的项目,只是我想重新制作它,这样我就可以用 DirectX 做同样的事情。我一开始就遇到了这个错误,现在已经研究了大约 2 天。

这是完整的错误:错误 1 ​​错误 LNK2019:无法解析的外部符号_imp _JAWT_GetAWT@8 在函数“public: __thiscall JAWT_Info::JAWT_Info(struct JNIEnv_ *,class _jobject *)”中引用 (??0JAWT_Info@@QAE@PAUJNIEnv_@ @PAV_jobject@@@Z) C:\Users\Michael\documents\visual studio 2013\Projects\BezerkGL\BezerkGL\redgl.obj BezerkGL

这是我正在使用的标题:

我很确定这是所有必需的信息。

0 投票
1 回答
489 浏览

java - AWT.GetDrawingSurface 做什么?

我正在一个项目中,我需要将 vtk 与 Java 和 JavaFX 一起使用。为了给 VTK 一个可以绘制的正确画布,我想知道函数 GetDrawingSurface() 在下面的代码中做了什么。awt 是一个 JAWT 对象,它在jawt 库中的jawt.h 中描述。

这是为了重写 Java 类,为 C++ 提供正确的画布。

0 投票
1 回答
92 浏览

java - 如何绘制两个不同的 JFrame

我的目标是在一帧中实现空间填充曲线,在另一帧中实现每个像素的数量。将来,我需要在第三帧中绘制一些坐标。我现在的问题是如何在一帧中绘制曲线,在另一帧中绘制像素。我只让它们在同一个框架中。

这是代码:

}

还有 SimpleGraphics.java 类

输出是:输出

我想要的输出是:在此处输入图像描述

0 投票
1 回答
63 浏览

java - 隐藏 Canvas 时丢失 AWT DrawingSurface

我正在为 AWT/Swing 应用程序编写 3d 渲染模块。

为了提供良好的 FPS,我无法使用 Swing/AWT 方法和图形进行绘制。相反,我从 Canvas 元素获取绘图表面,然后直接渲染到它。像这样的东西:

当我第一次调用它时它工作正常。但是当我出于任何原因隐藏画布时(例如最小化窗口或显示另一个面板而不是画布),ds变量保持不变,但在那之后它就不起作用了。基本上,即使我确保仅在变量可见且位于顶部时才调用该变量 - 任何使用ds的调用都会引发异常。例如lock()函数停止工作。

我想知道为什么会这样?

如果我最小化然后再次最大化窗口,我也尝试基本上获得一个新的 DS,但这也不起作用 - 新的 DS 地址按原样返回,但我不能像我一样使用那个新对象不要用原来的。

我可能在这里遗漏了一些愚蠢的东西,但我不知道是什么。请帮我解决这个问题。谢谢!