![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| MashaW |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 5.8.2007 Репутация: нет Всего: нет |
Помогите)
Только начала изучение Java взяла книгу Эккеля...и на второй главе..то есть на создании первой программы типы "Hello it's:17.12" застопорилась(... не понимаю фишки с CLASSPATH. Вроде я создала все, путь прописала...javac тоже проходит, а вот потом когда пишу java выдает ошибку: Exception in thread "main" java.lang.NoClassDefFoundError: (и тут по разному пишет(() Уже и переустанавливала, и пробовала по разному пути прописывать...ничего не выходит... Очень жду помощи... |
|||
|
||||
| AlexeyVorotnikov |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 658 Регистрация: 18.6.2007 Где: Москва Репутация: 10 Всего: 18 |
Так что же именно он пишет? И код программы желательно привести. -------------------- RTFM! Три источника и три составные части Java: The Java Language Specification, Java Platform API Specification, The Java Virtual Machine Specification |
|||
|
||||
| MashaW |
|
||||
|
Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 5.8.2007 Репутация: нет Всего: нет |
Пишет например: Exception in thread "main" java.lang.NoClassDefFoundError:HelloJava Добавлено через 11 минут и 6 секунд
Пишет например: Exception in thread "main" java.lang.NoClassDefFoundError:HelloJava |
||||
|
|||||
| AlexeyVorotnikov |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 658 Регистрация: 18.6.2007 Где: Москва Репутация: 10 Всего: 18 |
Различие в именах классов Вам ни о чём не говорит? -------------------- RTFM! Три источника и три составные части Java: The Java Language Specification, Java Platform API Specification, The Java Virtual Machine Specification |
|||
|
||||
| MashaW |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 5.8.2007 Репутация: нет Всего: нет |
Я и так и так пробовала...все равно:
Exception in thread "main" java.lang.NoClassDefFoundError: HelloDate (( Как использовать CLASSPATH? Может в этом дело? При его создании я прописала полный путь до папки src в которой хранятся все стандартные библиотеки. |
|||
|
||||
| AlexeyVorotnikov |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 658 Регистрация: 18.6.2007 Где: Москва Репутация: 10 Всего: 18 |
CLASSPATH должен указывать не на папку с исходным кодом, а на папку, в которую складываются скомпилированные классы. Добавлено через 55 секунд PS: Какую книгу Вы имеете в виду? Из которой примеры берёте. -------------------- RTFM! Три источника и три составные части Java: The Java Language Specification, Java Platform API Specification, The Java Virtual Machine Specification |
|||
|
||||
| MashaW |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 5.8.2007 Репутация: нет Всего: нет |
...Брюс Эккель "Философия Java" 2-е издание правда (слышала, что оно не очень(((но другого не нашла)
Что-то я торможу(... Значит так: -Я создаю в блокноте код. -Сохраняю его под названием используемого класса. (с расширением .java) -Дальше компилирую, использую команду javac <путь_ до_HelloDate.java> -Получаю HelloDate.class -Дальше пытаюсь запустить с помощью java HelloDate -..и получаю ошибку((( P.S. куда впихнуть CLASSPATH с его путем? |
|||
|
||||
| AlexeyVorotnikov |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 658 Регистрация: 18.6.2007 Где: Москва Репутация: 10 Всего: 18 |
Надеюсь, Вы не используете какой-нибудь древний JDK 1.1? Если Вы пользуетесь современными JDK, устанавливать CLASSPATH нет необходимости. (Более того, иногда это даже вредно.)
А вот этот <путь_ до_HelloDate.java> дальний? -------------------- RTFM! Три источника и три составные части Java: The Java Language Specification, Java Platform API Specification, The Java Virtual Machine Specification |
|||
|
||||
| Real McCoy |
|
||||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 113 Регистрация: 28.6.2007 Репутация: нет Всего: 2 |
Компилироватьть надо как
Текущим каталогом должен быть тот, где лежит HelloDate.java CLASSPATH можете указать при компиляции или запуске программы в командной строке. Это пути, по которым компилятор будет искать исходник Вашей программы и библиотеки (не исходники, а бинарники), импортируемые программой. У Эккеля об этом - в главе 5. Если скомпилировалось, так и запускайте тогда с тем же путём, с каким компилировали, т.е.
Это сообщение отредактировал(а) Real McCoy - 5.8.2007, 18:04 |
||||
|
|||||
| AlexeyVorotnikov |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 658 Регистрация: 18.6.2007 Где: Москва Репутация: 10 Всего: 18 |
Значит, так.
Переходите в каталог, где лежит HelloDate.java. Пишете в коммандной строке javac HelloDate.java HelloDate.class должен создаться в этом же каталоге. после этого должно выплняться java HelloDate CLASSPATH устанавливать не нужно. Добавлено @ 18:05 Real McCoy опередил Это сообщение отредактировал(а) AlexeyVorotnikov - 5.8.2007, 18:06 -------------------- RTFM! Три источника и три составные части Java: The Java Language Specification, Java Platform API Specification, The Java Virtual Machine Specification |
|||
|
||||
| MashaW |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 5.8.2007 Репутация: нет Всего: нет |
...он создает HelloDate.class, но при вводе java HelloDate выводит эту злополучную ошибку....
|
|||
|
||||
| AlexeyVorotnikov |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 658 Регистрация: 18.6.2007 Где: Москва Репутация: 10 Всего: 18 |
Давайте ещё раз попробуем.
В коммандной строке наберите
Если и так не заработает, то уже не знаю что делать... -------------------- RTFM! Три источника и три составные части Java: The Java Language Specification, Java Platform API Specification, The Java Virtual Machine Specification |
|||
|
||||
| MashaW |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 5.8.2007 Репутация: нет Всего: нет |
ОГРОМНОЕ СПАСИБО!!! |
|||
|
||||
| AlexeyVorotnikov |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 658 Регистрация: 18.6.2007 Где: Москва Репутация: 10 Всего: 18 |
-------------------- RTFM! Три источника и три составные части Java: The Java Language Specification, Java Platform API Specification, The Java Virtual Machine Specification |
|||
|
||||
| Vovan_Danielyan |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 32 Регистрация: 4.8.2007 Где: Усть-Лабинск Репутация: нет Всего: 1 |
Чтоб не мучаться с переменой директории и не прописывать "cd" советую скопировать файл cmd.exe из папки system32 прямо в папку bin. И уже эту копию командной строки запускать. Тогда путь к папке пропишется сразу сам по себе.
Добавлено через 10 минут и 18 секунд Что-то я не понял, CLASSPATH каждый раз прописывать что ли надо? Я помню, я обходился без этого раньше. А сейчас установил по новой яву и у меня тоже стала выскакивать та же ошибка "Exception in thread main..." Еще: почему CLASSPATH указывает путь Program Files\QuickTime\QTSystem\QTJava.zip - квик-тайм тут при чем? Можно ли прописать где-нибудь CLASSPATH чтоб он больше не менялся? |
|||
|
||||
![]()
|
| Правила форума "Java" | |
|
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |