Запуск java из Windows не равен запуску через cmd?
Есть bat-файл, в котором прописана загрузка java и выполнением, к примеру, class/other
Когда bat-файл запускаем через оболочку windows - всё выполняется нормально. Когда же пытаемся запустить тот же файл, но через cmd.exe, у нас выдается такая ошшибка: Expection in thread "main": java.lang:NoClassDetFoundError class/other
Мне кажется, это из-за того, что в проводнике и cmd разные кодовые таблицы загружены... Хоть и при запуске через проводник запускается cmd. Возможно я не прав...
Помогите, пожалуйста!
Дело в том, что при запуске батника из explorer'а текущим каталогом является та пака, из которой он запущен, а при запуске cmd.exe - c:\Documents and Settings\имя_пользователя
текущий каталог....
понимаете в батнике прописана команда по запуску java с параметрами. из той же текущей папки...
поэтому проблема вряд ли в этом...
Цитата: Ashl1
Такая ситуация:
Есть bat-файл, в котором прописана загрузка java и выполнением, к примеру, class/other
Когда bat-файл запускаем через оболочку windows - всё выполняется нормально. Когда же пытаемся запустить тот же файл, но через cmd.exe, у нас выдается такая ошшибка: Expection in thread "main": java.lang:NoClassDetFoundError class/other
Помогите, пожалуйста!
Есть bat-файл, в котором прописана загрузка java и выполнением, к примеру, class/other
Когда bat-файл запускаем через оболочку windows - всё выполняется нормально. Когда же пытаемся запустить тот же файл, но через cmd.exe, у нас выдается такая ошшибка: Expection in thread "main": java.lang:NoClassDetFoundError class/other
Помогите, пожалуйста!
У меня такая ошибка лечилась двумя спосабами:
- Прописать CLASSPATH и PATH в системных переменных.
- Как не странно, замена вызова static public void main(String [] args) на static public void main(String args[]) - сняло проблемму. Возможно, разные java в конкретных случаях работают...
<-- Простите, а что нужно писать в эти переменные? Вы ведь имеете ввиду переменные windows? :)
-->замена вызова
<-- Вы имеете ввиду покапаться в коде и заменить вызов процедуры? Честно говоря, это вообще не мой проект... Нет, я, конечно же, могу посмотреть, но... мне придётся заменять вызов всех процедур?
Я пробовал так, но, к сожалению, ничего не получается. Перестановка тоже не помогает!
Тебе ж java сама говорит, что не может найти твой класс other. Проверяй пути, тебе headsoft верно написал.
1.java -classpath [библиотеки используемые в коде, разделитель -;] имя_пакета.имя_класс-файла [аргументы на вход]
2. Если и после 1 выдает туже ошибку то предварительно сделать: Set CLASSPATH=. , и повторно повторить пункт 1
3. Если и после пункта 2 возникают ошибки, то проверить а правильно ли прописываются пути в ClassPath, если правильно на 100 процентов - то попробовать запихнуть пути в ClassPath вручную
Ну если после этого не заработает - то либо что-то установленно не верно либо руки кривые :) - Должно пахать а вообще про ClassPAth читай http://www.ibm.com/developerworks/ru/library/j-classpath-unix/index.html
хм....я всегда абсолюный путь прописываю, и усе тип топ....