использование пакета com.sun.awt - PullRequest
6 голосов
/ 09 февраля 2011

Я нашел Java code и хочу использовать его в своем проекте.Он содержит данные импорта, которых у моего JDK нет:

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

Я ссылался на сайт Sun и нашел эту страницу загрузки:

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

Этонеобходимо скачать все JDK и JRE и заменить их с сайта SUN?Моя JDK является версией 6 и обновлена.

Спасибо всем

Ответы [ 3 ]

9 голосов
/ 09 февраля 2011

JNA - это дополнительная библиотека, которая не является частью стандартного API, вы должны загрузить ее ( здесь ) и включить в свой путь к классам.

Класс AWTUtilities распространяется только с Sun jvm как деталь реализации API, и как таковой может быть изменен, это может привести к поломке любой программы в зависимости от него (если возможно не используйтеэто ).

WindowUtils можно найти в platform.jar, его можно найти на той же странице, что и jna.

5 голосов
/ 09 февраля 2011

Ваш JDK должен иметь com.sun.awt.AWTUtilities. Это в rt.jar.

Может быть, проблема (для этого файла) в том, что ваша IDE исключает родительский путь сборки ... на том основании, что не рекомендуется использовать эти классы напрямую.

Классы com.sun.jna не входят в rt.jar. По-видимому, их можно найти в jna.jar, хотя я пока не нашел подходящего места для его загрузки. (Если вы используете Maven, попробуйте this .)

4 голосов
/ 09 февраля 2011

Вы не должны использовать какие-либо пакеты com.sun, кроме как в крайнем случае.Они считаются деталями реализации и не являются частью JDK API.Они могут произвольно меняться между версиями, поэтому они могут вызвать проблемы при попытке обновить версии JDK.

Классы com.sun почти всегда заключаются в "официальные" классы - вы должны использовать их вместо этого.Вы можете использовать их в крайнем случае, но они уже являются частью загрузки JDK, поэтому дополнительная загрузка не требуется.

РЕДАКТИРОВАТЬ: похоже, вы правы, вам нужно скачать некоторыедополнительные банки.JAR-файл JAR доступен в maven central (http://mvnrepository.com/artifact/com.sun.jna/jna/3.0.9). Особенно, если вы нашли этот фрагмент кода, я настоятельно рекомендую не использовать пакеты com.sun напрямую.

...