Jav*_*erd 1 java netbeans graphic
我对此类问题很陌生。我的 Net Beans IDE 由于显卡问题而崩溃!我的机器上安装了 AMD Radeon R9 M200X 系列显卡,内存为 2GB。每当我尝试在 Net Beans IDE 中创建新的 JFrame 时;它突然猛烈地坠落。我还有英特尔高清显卡(可能是默认/内置卡)!我通过卸载 AMD 显卡驱动程序并在 INTEL 显卡上使用我的 Net Beans IDE 来了解此问题!问题很奇怪,当我有 ADM Radeon 时,IDE 无法使用!错误日志文件如下:
A fatal error has been detected by the Java Runtime Environment:
EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x0000000000000000, pid=6496, tid=6980
JRE version: Java(TM) SE Runtime Environment (8.0_65-b17) (build 1.8.0_65-b17)
Java VM: Java HotSpot(TM) 64-Bit Server VM (25.65-b01 mixed mode windows-amd64 compressed oops)
Problematic frame:
C 0x0000000000000000
Failed to write core dump. Minidumps are not enabled by default on client versions of Windows
If you would like to submit a bug report, please visit:
http://bugreport.java.com/bugreport/crash.jsp
The crash happened outside the Java Virtual Machine in native code.
See problematic frame for where to report the bug.
--------------- T H R E A D ---------------
Current thread (0x00000000166e9800): JavaThread "AWT-EventQueue-0" [_thread_in_native, id=6980, stack(0x000000001ade0000,0x000000001afe0000)]
siginfo: ExceptionCode=0xc0000005, ExceptionInformation=0x0000000000000008 0x0000000000000000
Registers:
RAX=0x000000001afdd2f4, RBX=0x000007fefed60000, RCX=0x000000001afdd2f0, RDX=0x0000000000000000
RSP=0x000000001afdd2a8, RBP=0x000000001afdd3b0, RSI=0x000007fef479fa00, RDI=0x000000001afdd920
R8 =0x0000000000000140, R9 =0x0000000000000006, R10=0x0000000000000000, R11=0x000000001afdd2f4
R12=0x000000001afddb90, R13=0x000007fefb7953cc, R14=0x0000000000000000, R15=0x00000000166e9800
RIP=0x0000000000000000, EFLAGS=0x0000000000010213
Top of Stack: (sp=0x000000001afdd2a8)
0x000000001afdd2a8: 000007fefb793f5d 0072007400730069
0x000000001afdd2b8: 0061004d005c0079 006e006900680063
0x000000001afdd2c8: 00790053005c0065 006d006500740073
0x000000001afdd2d8: 007200750043005c 0074006e00650072
0x000000001afdd2e8: 0074006e006f0043 0000000000000000
0x000000001afdd2f8: 0000000000000000 0000000000000000
0x000000001afdd308: 0000000000000000 0000000000000000
0x000000001afdd318: 0000000000000000 0000000000000000
0x000000001afdd328: 0000000000000000 0000000000000000
0x000000001afdd338: 0000000000000000 0000000000000000
0x000000001afdd348: 0000000000000000 0000000000000000
0x000000001afdd358: 0000000000000000 0000000000000000
0x000000001afdd368: 0000000000000000 0000000000000000
0x000000001afdd378: 0000000000000000 0000000000000000
0x000000001afdd388: 0000000000000000 0000000000000000
0x000000001afdd398: 0000000000000000 0000000000000000
Instructions: (pc=0x0000000000000000)
0xffffffffffffffe0:
Register to memory mapping:
RAX=0x000000001afdd2f4 is pointing into the stack for thread: 0x00000000166e9800
RBX=0x000007fefed60000 is an unknown value
RCX=0x000000001afdd2f0 is pointing into the stack for thread: 0x00000000166e9800
RDX=0x0000000000000000 is an unknown value
RSP=0x000000001afdd2a8 is pointing into the stack for thread: 0x00000000166e9800
RBP=0x000000001afdd3b0 is pointing into the stack for thread: 0x00000000166e9800
RSI=0x000007fef479fa00 is an unknown value
RDI=0x000000001afdd920 is pointing into the stack for thread: 0x00000000166e9800
R8 =0x0000000000000140 is an unknown value
R9 =0x0000000000000006 is an unknown value
R10=0x0000000000000000 is an unknown value
R11=0x000000001afdd2f4 is pointing into the stack for thread: 0x00000000166e9800
R12=0x000000001afddb90 is pointing into the stack for thread: 0x00000000166e9800
R13=0x000007fefb7953cc is an unknown value
R14=0x0000000000000000 is an unknown value
R15=0x00000000166e9800 is a thread
Stack: [0x000000001ade0000,0x000000001afe0000], sp=0x000000001afdd2a8, free space=2036k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
j sun.awt.Win32GraphicsDevice.getMaxConfigsImpl(I)I+0
j sun.awt.Win32GraphicsDevice.getMaxConfigs(I)I+10
j sun.awt.Win32GraphicsDevice.getConfigurations()[Ljava/awt/GraphicsConfiguration;+69
j javax.swing.ToolTipManager.getDrawingGC(Ljava/awt/Point;)Ljava/awt/GraphicsConfiguration;+36
j javax.swing.ToolTipManager.showTipWindow()V+115
j javax.swing.ToolTipManager$insideTimerAction.actionPerformed(Ljava/awt/event/ActionEvent;)V+113
J 10142 C1 javax.swing.Timer.fireActionPerformed(Ljava/awt/event/ActionEvent;)V (46 bytes) @ 0x000000000423345c [0x0000000004233120+0x33c]
J 14878 C1 javax.swing.Timer$DoPostEvent.run()V (95 bytes) @ 0x0000000004faa514 [0x0000000004fa9940+0xbd4]
J 15500 C2 java.awt.EventQueue$3.run()Ljava/lang/Object; (5 bytes) @ 0x00000000044152e0 [0x0000000004414fe0+0x300]
v ~StubRoutines::call_stub
J 1147 java.security.AccessController.doPrivileged(Ljava/security/PrivilegedAction;Ljava/security/AccessControlContext;)Ljava/lang/Object; (0 bytes) @ 0x0000000002906c26 [0x0000000002906bc0+0x66]
J 15438 C2 org.netbeans.core.TimableEventQueue.dispatchEvent(Ljava/awt/AWTEvent;)V (43 bytes) @ 0x00000000045e7e60 [0x00000000045e79c0+0x4a0]
J 20389 C2 java.awt.EventDispatchThread.pumpOneEventForFilters(I)V (295 bytes) @ 0x00000000060a3ccc [0x00000000060a3840+0x48c]
j java.awt.EventDispatchThread.pumpEventsForFilter(ILjava/awt/Conditional;Ljava/awt/EventFilter;)V+35
j java.awt.EventDispatchThread.pumpEventsForHierarchy(ILjava/awt/Conditional;Ljava/awt/Component;)V+11
j java.awt.EventDispatchThread.pumpEvents(ILjava/awt/Conditional;)V+4
j java.awt.EventDispatchThread.pumpEvents(Ljava/awt/Conditional;)V+3
j java.awt.EventDispatchThread.run()V+9
v ~StubRoutines::call_stub
Run Code Online (Sandbox Code Playgroud)
我只需要知道我是否可以在 Intel 高清显卡而不是 AMD 显卡上使用 NetBeans,因为最近 AMD 删除了可切换显卡的选项!现在,AMD 的用户拥有 Crimson 软件(无论我不打算用于图形)!
有人可以告诉我这个问题的解决方案是什么吗!任何帮助将不胜感激!
它只发生在 NetBeans IDE 中,并且 AWT 组件类无法正常工作!
提前致谢
很简单,IDE 崩溃是因为显卡的 AMD Radeon Crimson 版驱动程序!
只需在IDE 安装的根目录下找到Netbeans.conf文件,然后打开etc 文件夹并编辑 Netbeans.conf。
在编辑模式下找到字符串:
netbeans_default_options="-J-client -J-Xss2m -J-Xms32m -J-Dapple.laf.useScreenMenuBar=true -J-Dapple.awt.graphics.UseQuartz=true -J-Dsun.java2d.noddraw=true -J-Dsun.java2d.dpiaware=true -J-Dsun.zip.disableMemoryMapping=true"
Run Code Online (Sandbox Code Playgroud)
在上面提到的代码中,只需将选项更改为:
-J-Dsun.java2d.noddraw=false
Run Code Online (Sandbox Code Playgroud)
这样新的字符串将是:
netbeans_default_options="-J-client -J-Xss2m -J-Xms32m -J-Dapple.laf.useScreenMenuBar=true -J-Dapple.awt.graphics.UseQuartz=true -J-Dsun.java2d.noddraw=false -J-Dsun.java2d.dpiaware=true -J-Dsun.zip.disableMemoryMapping=true"
Run Code Online (Sandbox Code Playgroud)
它适用于具有双显卡的机器的用户,例如我有一个 Intel HD Graphics 4400 卡和一个 AMD Radeon R9 M200X 系列!
但问题是 AMD 刚刚删除了可切换显卡,因此您不能允许任何 Windows 应用程序强制使用您的英特尔显卡(可能是我没有找到任何方法来做到这一点!)。
此解决方案适用于拥有 AMD Radeon 显卡且其 Netbeans IDE 由于 AWT 组件库而强制崩溃的机器的用户!
谢谢大家!