前情提要
紧接此文的前情提要
在找到对应端口对应的文件目录后,有点绝望,JDK 目录连上了我的知识点,却击碎了我的幻想
但是咱不是善于认输的人,有没有什么办法可以看到正在运行的java
进程的相关配置参数或者环境变量呢?
答案:有的,所以如下
但是即使知道了环境变量,由于是通过案例通过Tomcat
部署(移植到类中直接运行失败),所以也无法排除是否是Tomcat
发起连接还是业务代码发起连接
不管怎么说,学到了就记录
Jinfo
jinfo — 查看进程参数
jinfo
是 JDK 自带的命令,可以用来查看正在运行的 java 应用程序的扩展参数,包括 Java System 属性 和 JVM命令行参数;也可以动态的修改正在运行的 JVM 一些参数。当系统崩溃时,jinfo可以从core文件里面知道崩溃的Java应用程序的配置信息。
jinfo -help
结果如下:
参数说明:
-flag <name>
:打印指定名称的参数。-flag [+|-]<name>
:打开或关闭参数。-flag <name>=<value>
:设置参数。-flags
:打印当前指定java进程中已经设定的所有JVM参数信息。-sysprops
:打印当前java进程中设定的系统环境参数。<no option>
:打印上面两个选项。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
> jinfo -help Usage: jinfo [option] <pid> (to connect to running process) jinfo [option] <executable <core> (to connect to a core file) jinfo [option] [server_id@]<remote server IP or hostname> (to connect to remote debug server) where <option> is one of: -flag <name> to print the value of the named VM flag -flag [+|-]<name> to enable or disable the named VM flag -flag <name>=<value> to set the named VM flag to the given value -flags to print VM flags -sysprops to print Java system properties <no option> to print both of the above -h | -help to print this help message
常用命令
-flag
普通用法
jinfo -flags pid
打印当前指定java进程中已经设定的所有JVM参数信息
输出如下
|
|
此项返回值对于笔者来说,暂时没有多少有用的信息,所以有如下
打印指定名称的参数
注意是 -flag 而不是 flags
jinfo -flag [指定参数] pid
输出如下
|
|
打开或关闭参数
jinfo -flag [+/-][指定参数] pid
,且参数必须被JVM
支持
示例给出网上的结果
示例
运行如下
|
|
查看
jinfo -flags 7663
图中可见,参数已经成功添加
-sysprops
jinfo -sysprops pid
|
|
Ref
https://blog.csdn.net/wangzhongshun/article/details/122298396