如何为我自己的应用程序设置进程名称
我创建了一个简单的java网络程序。我正在使用费多拉。每当我想查看系统上运行的进程时,我发现对于我的应用程序,进程名称是 java.lang.我想为我的应用程序提供进程名称。如何给出进程名称。
谢谢 苏尼尔·库马尔·萨胡
I have created a simple java networking program. I am using Fedora. whenever I want to see what the processes run on my system I found that for my application the process Name is java. I want give process name for my application. How to give process name.
Thanks
Sunil Kumar Sahoo
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
更改应用程序进程名称的一种方法是使用本机启动器(或将
java
/java.exe
可执行文件复制到另一个名称)。就我个人而言,我使用 Launch4j 取得了良好的结果
One way to change the process name of an application is to use a native launcher (or to copy the
java
/java.exe
executable to another name).Personally I've had good results with Launch4j
您可以在启动进程时将 java 属性传递给 jvm,然后在运行 ps -eaf 时应该显示该属性,您甚至可以执行 ps -eaf|grep myprop 来查看它是否正在运行。
所以你像这样启动应用程序:
java -cp 。 com.whatever.MyApp -DMyAmazingProgram=true
那么您应该在 ps 输出中看到 MyAmazingProgram=true 。
另一种方法是从 bash 脚本文件(例如 startMyAmazingApp.sh)启动应用程序,然后该文件应该显示在 ps 输出中,直到进程结束。
在 java 进程完成之前,该脚本必须不会退出,因此您需要一个类似于这样的脚本(粗略猜测):
HTH
You could pass a java property to the jvm when you start the process then that should show up when running a ps -eaf and you could even do a ps -eaf|grep myprop to see if it's running.
so you start the app like this:
java -cp . com.whatever.MyApp -DMyAmazingProgram=true
then you should see the MyAmazingProgram=true in the ps output.
Another way would be to start your app from a bash script file e.g, startMyAmazingApp.sh then that should show up in the ps output until the process ends.
That script would have to not exit until the java process finished so you'd need to have a script a bit like this (rough guess):
HTH