起因是任务管理器里只能看到java.exe
进程名,却不知道具体运行的哪个jar文件。
搜索到的方案,powershell中执行:
PS C:Userswb> wmic process where "caption='java.exe'" get caption,commandline,processId /value
Caption=java.exe
CommandLine="D:Program FilesJavajdk1.8.0_221injava" -Declipse.application=org.eclipse.jdt.ls.core.id1 -Dosgi.bundles.defaultStartLevel=4 -Declipse.product=org.eclipse.jdt.ls.core.product -Dfile.encoding=utf8 -DwatchParentProcess=false -noverify -Xmx1G -XX:+UseG1GC -XX:+UseStringDeduplication -jar c:Userswb.vscodeextensions
edhat.java-0.50.0serverpluginsorg.eclipse.equinox.launcher_1.5.500.v20190715-1310.jar -configuration c:Userswb.vscodeextensions
edhat.java-0.50.0serverconfig_win -data c:UserswbAppDataRoamingCodeUserworkspaceStorage6f19c0e1cac72342332c430916c20dea
edhat.javajdt_ws
ProcessId=21232
Caption=java.exe
CommandLine="D:Program FilesJavajdk1.8.0_221injava" -DwatchParentProcess=false -noverify -Xmx64M -XX:+UseG1GC -XX:+UseStringDeduplication -jar c:Userswb.vscodeextensions
edhat.vscode-xml-0.9.0serverorg.eclipse.lsp4xml-uber.jar
ProcessId=6840
注意这里的where
条件里的引号,一开始我用where caption="java.exe"
但一直报错,后来要把整个条件引起来,程序名再用单引号引才能执行成功。
另外get字段,除了命令中使用的caption, commandlin, processId
,还可以增加其他需要的参数。