В моем коде есть следующее заявление: import com.apple.dnssd.*;
и компилятор (javac) жалуется на эту строку. Он пишет, что пакет не существует. Но я думаю, что может быть, что «javac» ищет пакет в неправильном месте (каталог). В этом отношении у меня есть два вопроса:Как я могу найти пакет?
Как узнать, где находится javac для поиска пакетов?
Я думаю, что очень вероятно, что у меня есть вышеупомянутый пакет, но я не знаю, где он находится. Каково типичное место для поиска пакетов?
ДОБАВЛЕНО:
На другой машине Windows, я попробовал то же самое и «JAVAC» не жалуется (как раньше я скомпилирован без каких-либо опций, таких как «-cp»). Я проверяю значения переменной среды «classpath». Он равен «C: \ Program Files \ Java \ jdk1.6.0_18 \ bin;.. ..». Я пошел в первый каталог classpath и не нашел там что-то, что могло бы быть библиотекой «com.apple.dnssd» (без файлов jar, без файлов, содержащих «яблоко»). Итак, я не понимаю, почему javac НЕ жалуется на вторую машину Windows.
ДОБАВЛЕНО 2:
На машине # 2 я установил Bonjour после JDK. На машине № 1 JDK был установлен после Bonjour.
ДОБАВЛЕНО 3:
На машине # 1 (где я не могу импортировать пакет) Я нашел файл банку (он находится в «C: \ Program Files \ Bonjour» и его имя " dns_sd.jar "). Я попытался добавить указанный выше каталог в переменную среды PATHCLASS в Windows 7 (и я перезапустил систему). Это не помогает. Я все еще не могу импортировать пакет. Я также попытался указать «-classpath» в командной строке. Это также не помогает. Теперь я попытаюсь переустановить Bonjour (как было сказано).
ДОБАВЛЕНО 4:
У меня есть деинсталлировать Bonjour и Bonjour SDK. У меня есть окно перезагрузки. Затем я установил Bonjour и Bonjour SDK. Я перезаряжаю окно. Это не решило проблему. Я все еще не могу импортировать пакет (javac пишет, что пакет не существует). Я также скопировал файл * .jar в тот же каталог, в котором находится источник. Это не работает. Я использовал «javac -cp.». Это не работает. Теперь у меня нет вариантов. Я не знаю, что еще я могу попробовать. Кто-нибудь может мне помочь?
ДОБАВЛЕНО 5:
Мой путь к классам: C: \ Program Files \ Java \ jdk1.6.0_18 \ Bin;; ..; "C: \ Program Files \ Bonjour".
I попробуйте скомпилировать из этого каталога: C: \ Users \ myname \ java \ bonjour \ example
Скомпилировать следующую команду: javac ServiceAnnouncer.java
Появляется следующее сообщение об ошибке: ServiceAnnouncer.java:1: package com. яблоко.dnssd не существует
ДОБАВЛЕНО 6:
Наконец мне удалось импортировать библиотеку. Я сделал это следующим образом:
javac -cp "C:\Program Files\Bonjour\dns_sd.jar" ServiceAnnouncer.java
Важно то, что я указал файл банку после -cp (а не каталог, где находится файл банка находится). Он также работает, если я заменил «dns_sd.jar» на «*». Итак, я пришел к выводу, что после «-cp» мне нужно указать файлы jar (не каталоги).
вы должны добавить тег «путь к классам» на этот вопрос (я еще не имеют разрешений) – Timothy
Вы прочитали ссылку, отправленную duffymo? возможно, на машине №2 Bonjour для Windows был установлен после JDK. Вы ищете файл: dns_sd.jar – Timothy
@timmyd, Вы правы. На машине №2 Bonjour был установлен после JDK (на машине №1 JDK был установлен после Bonjour). Я прочитал ответ duffymo, но я до сих пор не понимаю, где находится библиотека на машине №2, и как я могу найти и использовать библиотеку на машине №1. – Roman