CGContextSetBaseCTM 无效的上下文0x0

2022-08-31 20:40:57

我目前正在开发一个Java应用程序。
由于我没有电脑,我已经从这个应用程序所针对的论坛/社区中寻求了一些人的帮助。
但是,在 上启动应用程序时会发生此错误。OSXOSX

Oct 5 15:26:58 ###-macbook-pro.local java[2384] <Error>: CGContextGetCTM: invalid context 0x0   
Oct 5 15:26:58 ###-macbook-pro.local java[2384] <Error>: CGContextSetBaseCTM: invalid context 0x0   
Oct 5 15:26:58 ###-macbook-pro.local java[2384] <Error>: CGContextGetCTM: invalid context 0x0   
Oct 5 15:26:58 ###-macbook-pro.local java[2384] <Error>: CGContextSetBaseCTM:      invalid context 0x0    
2012-10-05 15:26:59.590 java[2384:11517] Make pbuffer: 0 x 0   
2012-10-05 15:26:59.657 java[2384:2007] invalid drawable  

显然,由于我没有自己的计算机,因此很难调试这样的问题,所以我希望你们中的一个聪明人可以深入了解这个问题是由什么引起的,以便我可以去修复它。如果您有任何其他信息,您可能需要让我知道,我可以尝试让有电脑的人来获取它。OSXOSX


答案 1

此错误发生在(而不是打开 )上,当调用 JFrame.setIconImage(Image) 时:OSX Lion >=10.7.4<=10.7.3

OSX 10.7.5 与 Java 1.6.0_65-b14-462-11M4509

以及(如 Apple Mac OS X v10.7 Lion Support Communityjava-dev list 上所讨论的):

OSX 10.7.4 与 Java 1.6.0_51-b11-457-11A459

OSX 10.7.4 与 Java 1.6.0_31

OSX 10.7.4 与 Java 1.7.0_04

它不会发生在:

OSX 10.8.4 与 Java 1.6.0_51-b11-457-11M4509

鉴于上述信息,此错误是OSX的本机窗口实现中的错误 >=10.7.4 和 <10.8,而不是 Java 中的错误。

我试图通过调整设置JFrame图标的时间来解决此问题,但是调用该方法并不重要,如果使用.of,则错误似乎是不可避免的。JFrame.setIconImage


答案 2

您没有提供有关代码中发生这种情况的太多信息。在Mac上,当您看到此内容时,通常是因为您试图在没有图形上下文的情况下绘制图形上下文。

在Java中,我认为在JPanel或其他JComponent中绘制某些内容时可能会发生这种情况。例如,向其添加图像时。

据我所知,OS X上的Java JDK是由Apple提供的。对于我所读到的内容,这是Apple尚未修复的已知问题。