CGContextSetBaseCTM无效上下文0x0

我目前正在开发一个Java应用程序。
因为我没有自己的OSX电脑,我已经征求了一些来自论坛/社区的人的帮助,这个应用程序是为了。
但是,在OSX上启动应用程序时会发生此错误。

 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 

显然,因为我没有自己的OSX电脑,所以很难debugging这样的问题,所以我希望你们中的一个聪明的人可以了解到这个问题是由什么引起的,所以我可以去修复它。 如果有任何其他信息,你可能需要让我知道,我可以尝试让人与OSX电脑得到它。

在以下情况调用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支持社区和java-dev列表中讨论 ):

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图标的时间来解决这个问题,但调用方法时无关紧要,如果使用JFrame.setIconImage ,则错误似乎是不可避免的。

你不会提供有关在你的代码中发生这种情况的很多信息。 在Mac上,当你看到这个时,通常是因为你没有绘制graphics上下文。

在Java中,我认为这可能发生在JPanel或其他JComponent中绘制的东西。 例如,向其添加图像时。

据我所知,OS X上的Java JDK是由Apple提供的。 对于我读过的这个问题,苹果公司尚未解决的一个已知问题。

当我看到输出时,“上下文”,“缓冲区”和“可绘制”这些词,以及以CG开头的各种东西(意思是核心graphics),铃声响起,表示它必须有一些东西事实上你的程序使用一个GUI。 当它试图要求Mac OS显示GUI时,您的程序似乎崩溃了。

你真的在电脑上,而不是通过networking使用它? 如果是这样,你是从docker启动程序吗? 如果是,请确保您没有以其他人的身份login。 还有一百万个其他问题可能会导致这种情况,而我只是在表面上划痕。 不是Mac OS框架的专家,我只有一个build议:尝试获得Java更新。