51

私は現在Javaアプリケーションを開発しています。
また、私はコンピューターを所有していないOSXため、このアプリの対象であるフォーラム/コミュニティの何人かの人々の助けを借りました。
ただし、アプリケーションを .NET で起動すると、このエラーが発生します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、このような問題をデバッグするのは非常に困難です。そのため、知的な個人の 1 人が、この問題の原因を私に洞察して、修正に取りかかることができることを望んでいました. 他に必要な情報がある場合はお知らせくださいOSX。コンピューターを持っている人に情報を入手してもらうことができます。

4

3 に答える 3

2

このエラーは、 onOSX Lion >=10.7.4ではなく on でJFrame.setIconImage(Image)<=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.

于 2015-09-22T18:42:28.953 に答える
1

これがコードのどこで発生するかについては、あまり情報を提供しません。Mac でこれが表示されるのは、通常、グラフィック コンテキストがないのにグラフィック コンテキストに描画しようとしているからです。

Java では、JPanel または他の JComponent で何かを描画するときに、これが発生する可能性があると思います。たとえば、画像を追加する場合。

私の知る限り、OS X 上の Java JDK は Apple から提供されています。私が読んだ限りでは、これは既知の問題であり、Apple によってまだ修正されていません。

于 2014-08-20T17:18:31.690 に答える
0

出力を見ると、「context」、「buffer」、「drawable」という言葉、そして CG (つまり Core Graphics) で始まるさまざまなものを見ると、ベルが鳴り、プログラムがGUIを使用しているという事実。Mac OS に GUI を表示するように要求しようとすると、プログラムがクラッシュしているようです。

ネットワーク経由ではなく、実際にコンピューター上にいますか?もしそうなら、ターミナルからプログラムを起動していますか? そうである場合は、他のユーザーとしてログインしていないことを確認してください。これを引き起こす可能性のある問題は他にも何百万もありますが、私は表面をなぞっただけです。Mac OS フレームワークの専門家ではないので、もう 1 つだけ提案があります。Java アップデートを入手してみてください。

于 2013-07-14T23:47:54.287 に答える