Проблема с запуском исполняемого фляги от Intellij - PullRequest
0 голосов
/ 02 апреля 2019

Недавно я столкнулся с проблемой запуска исполняемого файла JAR из Intellij. Кажется, что Intellij не может выполнить команду -jar. Я не уверен, что это можно установить где-нибудь. Я могу запустить JAR из командной строки без проблем.

Я хочу иметь возможность отлаживать основной класс банки. У меня есть конфигурация отладки приложения JAR со стандартными опциями отладки JVM

-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005

трассировка стека самой проблемы:

Connected to the target VM, address: '127.0.0.1:58571', transport: 'socket'
    Exception in thread "main" java.lang.ClassNotFoundException: -jar
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    atcom.intellij.rt.execution.CommandLineWrapper.loadMainClassWithCustomLoader(CommandLineWrapper.java:193)
    at com.intellij.rt.execution.CommandLineWrapper.main(CommandLineWrapper.java:47)

P.S. Конфигурация отладки JAR-приложения:

Path to Jar: <my_path_to_jar>
VM Options: -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005
Program arguments: <passed_args>
Working dir: <path_to_my_project>

Спасибо.

1 Ответ

0 голосов
/ 02 апреля 2019

Я думаю, вам нужно выполнить какое-то устранение неполадок здесь. Когда вы запускаете приложение, знаете ли вы, используется ли порт 5005 для отладки? вы можете запустить командную строку при проверке использования этого порта netstat -aon | findstr 5005, это вернет процесс с идентификатором, если его там нет, это означает, что какая-то конфигурация отсутствует для отладки.

Вы можете просто запустить свой jar из командной строки с помощью arg - agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005, а из IntelliJ нажмите Run-> Attach to process. отобразится список процессов, запущенных на портах, выберите один на порту 5005.

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