Могу ли я узнать транспортный порт jdwp изнутри JVM?

Я запускаю Java со следующими аргументами:
-Xdebug -Xrunjdwp:transport=dt_socket,address=0,server=y,suspend=n
и получаю следующий результат:
Listening for transport dt_socket at address: 59183

Можно ли найти порт внутри той же JVM, не читая стандартный вывод?


person oshai    schedule 21.11.2011    source источник
comment
stackoverflow.com/questions/28745065 /   -  person shawn    schedule 07.06.2017


Ответы (1)


Почему вы устанавливаете порт на 0? Обычно вы должны использовать параметр адреса, чтобы установить порт на то, что вы хотите.

http://download.oracle.com/javase/1.4.2/docs/guide/jpda/conninv.html

person Dave L.    schedule 21.11.2011
comment
Я хочу, чтобы он получил свободный порт, чтобы он не подвел. Позже я подключусь к этому порту. - person oshai; 21.11.2011
comment
@ohadshai - Где задокументировано, что использование 0 для порта приведет к использованию открытого порта? - person Dave L.; 21.11.2011
comment
Я не знаю, задокументировано ли это, но вы можете увидеть результат в вопросе. это нормальное поведение при привязке порта. - person oshai; 21.11.2011
comment
Я вижу, что соглашение задокументировано в другом месте, даже если оно не задокументировано как часть материала runjdwp или agentilb: download.oracle.com/javase/7/docs/api/java/net/ - person Dave L.; 22.11.2011