Чтобы запустить мой сервер/клиент, я передаю клиент в качестве аргумента командной строки на сервер, и оба процесса являются startet.удаленная отладка сервера/клиентского приложения с помощью eclipse
java -cp bin this.is.an.example.server "java -cp C:\this\is\another\example\bin\client main.Client"
в попытке отладить его удобно я установил затмение, добавляя клиента в серверах работают конфигурации в качестве аргумента. Это сработало. К сожалению, таким образом я могу только отлаживать сервер. У меня не было доступа к клиенту во время выполнения, когда он запускается в другом процессе.
Так что я начал искать решение и нашел некоторые учебники, как это, например tutorial_1
Я добавил к моей командной строки java -cp bin this.is.an.example.server "java -Xdebug -Xrunjdwp:transport=dt_socket,address=127.0.0.1:56111,suspend=y -cp C:\this\is\another\example\bin\client main.Client"
Для моего клиента в затмении я добавил, как показано на рисунке 6 в tuttorial, удаленная отладка.
Когда я отладки в затмении он говорит
Ожидание VM для подключения к порту 56111
, но ничего не происходит.
Так вот мои проблемы:
- я делаю это правильно? или есть другой, может быть, более простой способ отладки моего клиента? Какие-либо предложения?
- если удаленная отладка в порядке. можно ли начать удаленную отладку, передав аргумент моему серверу, который затем запускает клиент с
Process process = Runtime.getRuntime().exec(command);
?
Кажется действительно неудобным, что вы запускаете клиент и сервер ** вместе **. Вся идея архитектуры клиент/сервер заключается в том, что эти два независимы друг от друга. Поэтому я поставил бы под сомнение ваше первое предложение. Вместо этого вы запускаете свой сервер. Затем вы начинаете свой клиент; и вы предоставляете клиенту IP-адрес и номер порта сервера; поэтому он может подключиться к этому серверу. Конечно, для первоначального тестирования IP и порт всегда одни и те же, поэтому необходимо настроить конфигурацию среды выполнения для вашего клиента в eclipse. – GhostCat
Кроме того: установка и использование eclipse ** только для запуска ** java-проекты звучат как ** overkill **. Вы должны либо делать ** всю свою работу по разработке »от eclipse, либо вообще не использовать его. Если вы больше на« Я хочу научиться делать вещи без IDE »... тогда вы могли бы написать несколько стартеров скрипты для запуска клиента/сервера .... – GhostCat
Да, действительно, это неудобно, но я унаследовал его таким образом и теперь должен найти способ заставить его работать ... снова. предположительно, он был/работает. Я назвал его сервером-клиентом потому что основная программа действует как «сервер», управляющая связью между всеми «клиентами» и, кстати, я не устанавливал eclipse для запуска «сервера/клиента», но для его отладки были и некоторые другие проблемы. – aldr