0

組み込みの Java Apple API も使用する GUI ソフトウェアがあります。問題は、Windows と OSX の両方で実行したいのですが、使用する関数では次のように実行することです。

import com.apple.eawt.Application;

 try{//if osx

     Application.getApplication().setDockIconImage(
        new ImageIcon(url).getImage());
    }catch(Exception e){}

それを解決する方法はありますか?

4

1 に答える 1

1

Mac 以外のシステムでコードが実行されないようにする必要があります。例えば:

String osType = System.getProperty("os.name").toLowerCase();
if (osType.indexOf("mac") >= 0) {
    Application.getApplication().setDockIconImage(new ImageIcon(url).getImage()); 
}

を削除しimportて完全修飾するApplicationか、この場合にのみロードされる別のクラスにすべて移動します。例えば:

if (osType.indexOf("mac") >= 0) {
    new MyMacSpecificStuff();
}

これにより、実行時に問題が修正されます。Windows でコンパイルする必要がある場合は、これらの Mac OS X クラスのスタブを使用する必要があります。詳細については、こちらを参照してください。

于 2013-05-20T18:40:37.477 に答える