передать параметры командной строки в формате -h name в eclipse - PullRequest
0 голосов
/ 01 февраля 2019

Я пишу клиентскую программу Java для MQ-клиента, чтобы выполнить начальный тест, для которого мне нужно передать следующие параметры, как показано ниже: Пример параметров командной строки // -h 127.0.0.1 -p 1414 -c CLIENT.CHANNEL -m A1 -q TEST.QUEUE в eclipse.Я получил IllegalArgumentException, когда передал значения в аргументах программы в eclipse.how для передачи указанных выше параметров. Пожалуйста, помогите мне в этом.

МОЙ код:

private void init(String[] args) throws IllegalArgumentException {
    for (int i = 0; i < args.length; i++) {
    System.out.println(args[i]);
}

...

params = new Hashtable<String, String>();

if (args.length > 0 && (args.length % 2) == 0) {
    for (int i = 0; i < args.length; i += 2) {
        params.put(args[i], args[i + 1]);
    }
} else {
    throw new IllegalArgumentException();
}

if (allParamsPresent()) {
    qMgrName = (String) params.get("-m");
    System.out.println("qMgrName: " + qMgrName);
    outputQName = (String) params.get("-q");
    System.out.println("outputQName: " + outputQName);
    replytoQueueName = (String) params.get("-r");
    System.out.println("replytoQueueName: " + replytoQueueName);
    url = (String) params.get("-j");
    System.out.println("url: " + url);
    username = (String) params.get("-u");
    System.out.println("username: " + username);
    password = (String) params.get("-pp");
    System.out.println("password: " + password);

1 Ответ

0 голосов
/ 01 февраля 2019

Я тоже определил параметры в RunAs-> RunConfiguration, и все это работает для меня.

enter image description here

Это то, как вы определили.

...