2009-07-20 12 views
16

Me he dado cuenta de que cuando inicio Netbeans aparece en el administrador de tareas como netbeans.exe ya que todas mis aplicaciones Java se muestran como java.exe o javaw.exe.¿Cómo puedo darle a mi aplicación Java un nombre de proceso único?

¿Cómo puedo cambiar eso para que mis nombres de proceso aparezcan como myapp.exe?

+0

hice una pregunta similar: http://stackoverflow.com/questions/1057247/how-can-i-set-the-process-name-for-a-java-program – Mnementh

Respuesta

17

El nombre del proceso es el nombre de la JVM. Entonces, si cambias el nombre de la jvm, tienes otro nombre de proceso. Hay algunas herramientas que pueden hacer eso por ti. Por ejemplo Launch4J

5

Netbeans y Eclipse se envían con un archivo .exe que a su vez inicia una JVM. El programa probablemente no hace nada luego de iniciar la máquina virtual. También veo NetBeans javaw.exe en el Administrador de tareas, sospecho.

Así que tendrás que escribir un exe nativo (usando alguna herramienta de Windows) que haga algo similar.

+0

Creo que javaw.exe es también el iniciador Eclipse. –

7

No es fácil. La forma más fácil (¡pero no agradable!) Sería simplemente copiar el java.exe (solo 68k en mi sistema, ¡así que quizás sea práctico!)

Si está preocupado por identificar qué proceso java es cuál (por ejemplo, uno consumo de memoria/CPU, etc.), utilice la herramienta estándar jps para identificar los procesos Java

+0

He hecho esto con el java.exe que uso para ejecutar eclipse, entonces puedo detectar fácilmente si eclipse está masticando recursos o mi programa. – RodeoClown

+0

Una copia de java.exe. Pero, ¿cómo se puede cambiar el nombre del proceso? – Yster

+0

Quizás copie java.exe en myjava.exe (para principiantes ...) –

9

IMO, la mejor opción es elegir uno de los muchos lanzadores de código abierto. Todos ellos proporcionan un contenedor de implementación más agradable que java.exe y un archivo por lotes.

he compilado una lista de ellos después de una breve búsqueda en Google (sin ningún orden en particular y puede no ser exhaustiva):

(información completa: Yo trabajo en winrun4j)

+0

winRun4j --está disponible como un complemento para eclipse y muy fácil de manejar. También probé launch4j es bueno pero no puede cambiar el nombre de myApp.exe a través de él. Aunque gracias por la lista ordenada de lanzadores de código abierto. –

+0

WunRun4J y JSmooth no parecen mantenerse por más tiempo –

0

Existen principalmente 2 enfoques: uno es como ya se ha descrito: el uso de herramientas como Launch4j, WinRun4J para crear iniciadores nativos de Windows.

Otro enfoque que parece mejor es utilizar Apache Procrun para envolver la aplicación Java como un servicio de Windows. Durante el proceso de instalación del servicio, podemos darle al proceso un nombre significativo como OurApp.exe.

Todo lo que necesitamos hacer es cambiar el nombre de prunsrv.exe a OurApp.exe y reemplazar cada aparición de prunsrv.exe en nuestra instalación | start | stop | desinstalar scripts de servicio en MyApp.exe.

Ver más de Using Apache Procrun to Rename Process Name of a Java Program in Windows

Cuestiones relacionadas