System.out не работает при вызове jar-файла из командной строки Windows

Yahoo использует метод, называемый идентификатором отправителя, который может быть настроен в Мастере установки SPF и введен в ваш DNS. Также один из важных для Exchange, Hotmail, AOL, Yahoo и других - иметь обратный DNS для вашего домена. Те будут выбивать большинство проблем. Однако вы никогда не можете помешать человеку умышленно блокировать ваши или пользовательские правила.

13
задан Jordi 4 June 2009 в 09:40
поделиться

3 ответа

Вы должны запустить JAR, используя

java -jar test.jar

(папка bin вашего JRE должна быть добавлена ​​в PATH, чтобы команда работала из любого места)

ПРИМЕЧАНИЕ : Я знаю, что вы создали JAR с помощью Eclipse, но вы, возможно, захотите узнать , как работает исполняемый файл JAR

32
ответ дан 1 December 2019 в 18:06
поделиться

Предыдущие ответы верны, поэтому я просто немного поясню концепцию «исполняемого файла jar». Нет такой вещи, как «исполняемая банка», эквивалентная исполняемому файлу в Windows, в «исполняемой банке» вы будете указывать только точку «входа» (ваш основной класс, который вы хотите выполнять по умолчанию)

Jar - это просто архив, вам все равно понадобится java для его запуска (java -jar your.jar)

Тот факт, что в Windows у вас может быть связь с javaw.exe, означает, что он будет запущен ОС, когда вы дважды щелкаете по банке, подобно тому, как файл .txt открывается автоматически с помощью блокнота, это не делает .txt исполняемым файлом.

Также проверьте это: Обнаружены файлы JAR

8
ответ дан 1 December 2019 в 18:06
поделиться

Когда вы вызываете jar с помощью test.jar, запуск приложения передается зарегистрированному обработчику java для файлов jar, который не запускается в контексте командной строки. .
Обработчик jar по умолчанию не открывает дескрипторы файлов System. {Out, err} на основе консоли, поскольку это будет означать окно стиля cmd для каждого запущенного файла jar, что не является идеальной ситуацией.
В предыдущем ответе с использованием java -jar test.jar он запускался в контексте текущего окна cmd, и поэтому вы увидите результат.

3
ответ дан 1 December 2019 в 18:06
поделиться
Другие вопросы по тегам:

Похожие вопросы: