6

Java を見つけcodeて、自分のプロジェクトで使用したいと考えています。JDKmy にはない次のインポートが含まれています。

import com.sun.awt.AWTUtilities;
import com.sun.jna.Native;
import com.sun.jna.platform.WindowUtils;

私は太陽のサイトを参照し、このダウンロードページを見つけました:

http://www.oracle.com/technetwork/java/javase/downloads/index.html

SUN の Web サイトからすべてダウンロードして置き換える必要がJDKありJREますか? 私のJDKはバージョン6で、最新です。

皆さん、ありがとうございました

4

3 に答える 3

10

JNAは追加のライブラリであり、標準APIの一部ではありません。これをダウンロードして(ここで)、クラスパスに含める必要があります。

このAWTUtilitiesクラスは、APIの実装の詳細としてsun jvmとともに配布されるだけであり、変更される可能性があるため、それに応じてプログラムが破損する可能性があります(可能な場合は使用しないでください)。

WindowUtilsplatform.jarにあり、jnaと同じページにあります。

于 2011-02-09T14:36:05.010 に答える
5

JDK にはcom.sun.awt.AWTUtilities. にありrt.jarます。

おそらく、(そのファイルの) 問題は、IDE がビルド パスの親を除外していることです...これらのクラスを直接使用するのは悪い考えであるという理由で。

com.sun.jnaクラスはありませんrt.jar。どうやら にあるようjna.jarですが、ダウンロードするのに適した場所はまだ見つかりません。(Maven を使用している場合は、これを試してください。)

于 2011-02-09T04:50:07.177 に答える
4

最後の手段として以外は、com.sun パッケージを使用しないでください。これらは実装の詳細と見なされ、JDK API の一部ではありません。これらはバージョン間で任意に変更できるため、JDK バージョンをアップグレードしようとすると問題が発生する可能性があります。

com.sun クラスはほとんどの場合、「公式」クラスでラップされています。代わりにそれらを使用する必要があります。これらは最後の手段として使用できますが、すでに JDK ダウンロードの一部であるため、追加のダウンロードは必要ありません。

編集:あなたが正しいように見えます.いくつかの追加のjarファイルをダウンロードする必要があります. JNA jar は、maven central (http://mvnrepository.com/artifact/com.sun.jna/jna/3.0.9) で入手できます。特に、これがあなたが見つけたコード スニペットである場合は、com.sun パッケージを直接使用しないことを強くお勧めします。

于 2011-02-09T04:48:00.850 に答える