Интересный побочный эффект этого вызывает проблему при запуске запускаемых файлов JAR в командной строке.
Если вы попробуете (в командной строке):
jarfile.jar parameter
Нет радости, потому что это переводится на следующее (что не работает):
javaw.exe -jar jarfile.jar parameter
Однако следующая команда работает:
java.exe -jar jarfile.jar parameter
Если вы измените связь в файловом менеджере, как описано выше, на:
"C:\Program Files\Java\j2re1.4.2_04\bin\java.exe" -jar "%1" %*
Тогда вы можете набрать:
jarfile.jar parameter
в командной строке, и теперь она будет работать!
РЕДАКТИРОВАТЬ: (Однако вы получите черное окно консоли при запуске Java-приложения на основе форм (не консольного), так что это не идеальное решение)
Если вы запустите эти jar-файлы, дважды щелкнув их в окнах, никакие параметры не будут переданы, поэтому ваш Java-код должен обрабатывать исключение переполнения стека и включать функцию «нажать клавишу» в конце, или окно просто исчезнет. .
Чтобы передать параметр в windows, вы должны создать ярлык для файла JAR, который включает в себя параметр в целевой строке (щелкните правой кнопкой мыши по ярлыку и выберите свойства), вы не можете добавить параметры к значку файла JAR сам таким образом.
Здесь нет единого согласованного решения, но у вас возникла бы такая же проблема с любым другим консольным приложением.
Существует бесплатное приложение для Windows под названием «bat to exe», которое можно использовать для создания exe-файла из .bat-файла с соответствующей командной строкой в нем. Вы также можете вставить jar-файл в исполняемый файл с этим приложением и заставить его очистить его после завершения работы, так что это может быть более элегантным решением.