Java - Как передать аргументы через ярлык - PullRequest
0 голосов
/ 27 сентября 2019

У меня есть Java-программа, которая запускается с обычной публичной статической пустоты main (String [] args)

Я хочу иметь возможность создавать ярлыки для этой программы (только справащелкните по исполняемому файлу в папке, нажмите «Создать ярлык» и затем передайте аргумент, который в итоге будет иметь значение String [] args

Не имеет значения, какой именно этот аргументна самом деле, поскольку единственная цель, для которой я этого хочу, - это создать два ярлыка для одной и той же программы и поместить один в папку автозапуска Window, а другой - на рабочий стол.Первый просто запускается в фоновом режиме каждый раз, когда я запускаю компьютер, а второй фактически открывает окно, чтобы я мог управлять настройками программы.

По существу;Я просто хочу иметь 2 ярлыка Windows, где один делает args [0] .equals ("X") , а другой делает args [0] .equals ("Y") .Как мне это сделать?

1 Ответ

0 голосов
/ 27 сентября 2019

Может быть Launch4j - это хороший инструмент, который вы можете попробовать, если выпускаете свою программу для Windows.Или, если вы предпочитаете обрабатывать его самостоятельно, вы можете использовать два отдельных файла .bat и поместить их в одну папку с вашим основным файлом .jar.Затем ярлыки должны указывать на каждый из файлов .bat, но одну вещь, которую вы должны учитывать, - это установить переменную PATH для включения JRE.или, например, использовать полный путь к java.exe.

, скажем, что у вас есть программа MyApp.jar, расположенная в C:/Users/user1/MyApp/ с foo.bat в той же папке, это должно быть что-то вроде этого:

java -jar MyApp.jar X

bar.bat в той же папке:

java -jar MyApp.jar Y

, если JRE включена в переменную PATH, в противном случае необходимо заменить команду java наполный путь к java.exe, поэтому он становится примерно таким:

"C:\\Program Files\\Java\\jre1.8.0_212\\java.exe" -jar MyApp.jar YOUR_ARGUMENT

Обратите внимание, что здесь нужны двойные кавычки, поскольку путь включает пробелы, и, конечно, путь JRE зависит от версии и архитектуры.Windows иногда находится в Progam Files (x86).

Кроме того, вам нужно найти способ скрыть всплывающее окно консоли после запуска файла .bat, окна консоли будут видны до тех пор, пока ваша java-программазавершается, и если пользователь закрывает их, это убьет вашу программу. это может быть полезным.

...