Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/351.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
linux下javaws-jnlp小程序的PID获取_Java_Linux_Jnlp - Fatal编程技术网

linux下javaws-jnlp小程序的PID获取

linux下javaws-jnlp小程序的PID获取,java,linux,jnlp,Java,Linux,Jnlp,我试图从bash运行一个java(jnlp)applet,并获取所创建进程的PID 使用此命令: javaws myapplet.jnlp > /dev/null & echo $! 这将返回加载jnlp的第一个java实例的pid;我猜,但与最终运行的java进程无关 有什么线索吗 找到原始javaws,如下所示: #!/bin/sh prog="$0" while [ -h "$prog" ]; do prog=$(readlink -f $prog); done [ $#

我试图从bash运行一个java(jnlp)applet,并获取所创建进程的PID

使用此命令:

javaws myapplet.jnlp > /dev/null & echo $!
这将返回加载jnlp的第一个java实例的pid;我猜,但与最终运行的java进程无关

有什么线索吗

找到原始javaws,如下所示:

#!/bin/sh
prog="$0"
while [ -h "$prog" ]; do prog=$(readlink -f $prog); done
[ $# -eq 0 ] && set -- -viewer
exec $(dirname $prog)/javaws.real "$@"

有没有一种方法可以修改它以给出子进程的PID?

我不知道这样做是否有效,但为了找到PID,更一般地说,我使用这个别名

alias prs='ps faux|grep -v grep|grep "$@"'
然后

prs my_prog
使用
javaws
的-J选项创建并加载
-J
参数直接传递到目标VM,并与.jnlp文件中的VM参数组合,因此您可以在与应用程序相同的过程中加载本地代理库


例如:

包含将当前PID(通过访问)存储在文本文件中的
premain
方法

假设
getpid.jar
jna.jar
位于当前目录中,则可以通过以下方式启动:

javaws -J-javaagent:getpid.jar=pid.txt myapplet.jnlp

这将在将其PID写入文件
PID.txt

Mmh后启动小程序,这不是我搜索的内容,因为我希望在启动时获取PID,而不是之后,我还运行了许多此小程序的实例