Заставить Java-приложение запрашивать аргументы перед запуском - PullRequest
0 голосов
/ 02 января 2012

Я хочу, чтобы мое Java-приложение запрашивало конкретные аргументы (например, имя и адрес электронной почты) перед запуском в Eclipse. Как я могу заставить это сделать это?

Ответы [ 3 ]

5 голосов
/ 02 января 2012

Это не часть кода Java - это часть конфигурации запуска.

Перейдите в раскрывающийся список «Выполнить» (стрелка вниз рядом с кнопкой запуска), выберите «Запустить конфигурации», а затем найдите свою программу и выберите ее.

Перейдите на вкладку «Аргументы», а затем в «Аргументах программы» нажмите «Переменные ...», чтобы получить список возможных переменных для использования в Eclipse. Например:

${string_prompt:Foo}

Это запросит у пользователя значение «Foo», когда вы затем запустите эту конфигурацию.

2 голосов
/ 02 января 2012

Отредактируйте конфигурацию запуска класса, который вы хотите запустить, перейдите на вкладку Аргументы , нажмите кнопку Переменные ... под Аргументы программы текстовое поле и выберите одну из *prompt переменных. Сделайте это для каждого аргумента.

0 голосов
/ 02 января 2012

Хотя этот подход не технически запрашивает у пользователя ввод до запуска Java-приложения, оно может выполнить в основном то же самое:

Вы можете использовать простой в использовании класс SWING, JOptionPane. Таким образом, входные приглашения будут частью приложения, но если вы поместите их в самом начале метода main (), это будет иметь примерно такой же эффект, как и запрос перед запуском приложения. Используя это, вы добавите что-то вроде следующего в ваш исходный код в самом начале:

String name = JOptionPane.showInputDialog("Please enter name:");
String email = JOptionPane.showInoputDialog("Please enter email:");

Здесь является ссылкой на то, как работает класс JOptionPane.

При этом при запуске приложения появится всплывающее окно, в которое пользователь может ввести текст.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...