2011-04-20 34 views
26

He estado trabajando en un proyecto Java desde mi máquina local usando Eclipse. Estoy tratando de ejecutar esto en una máquina remota. La máquina remota es un clúster que se ejecuta en Linux. En este momento, he montado la unidad remota y edito la copia del archivo remoto a través de Eclipse. Sin embargo, estaba buscando algo más robusto. ¿Hay alguna forma de hacerlo sin problemas a través de Eclipse, es decir, cada vez que ejecuto el proyecto, se ejecuta en la máquina remota?Eclipse - Ejecutar proyecto en una máquina remota

+0

¿Ha intentado hacer una sesión de ventanas X11 remoto con ssh-X? – wespiserA

+0

Sí. Es demasiado lento para el uso diario :( – Naveen

+2

Si su intención es depurar su aplicación de forma remota a través de la función de depuración remota Eclipse IDE, puede hacerlo de la siguiente manera http://www.ibm.com/developerworks/opensource/library/os -eclipse-javadebug/index.html – eee

Respuesta

1

Gestión de destinos/Remote System Explorer proporciona complementos para mantener un directorio remoto sincronizado con su proyecto. Consulte http://www.eclipse.org/tm/

Para ejecutar su programa de forma remota, probablemente tenga que configurar una configuración de inicio de Herramienta externa (desde el menú Ejecutar> Herramientas externas) y usar un programa como ssh para iniciar su aplicación java de forma remota en el clúster de Linux.

+0

Acabo de comprobar RSE. Me permite editar archivos remotos, pero no veo ninguna opción para sincronizar el proyecto local con mi máquina remota. ¿Me falta algo? – Naveen

+0

Parece que el valor primario de RSE es remoto edición. Consulte http://wiki.eclipse.org/TM_and_RSE_FAQ#How_can_I_use_a_remote_workspace_over_SSH.3F y https://bugs.eclipse.org/195997 –

-1

Esto suena como una gran situación para una solución continuous integration. ¿Has considerado configurar CruiseControl? Me doy cuenta de que puede parecer exagerado si solo eres un desarrollador trabajando en algo. Y si no desea mover un archivo JAR a la máquina remota, probablemente tampoco estará preparado para esto.

Pero la integración continua vale la pena una vez que está configurada. Más allá de la implementación automática (que es lo que está pidiendo aquí) obtendrá un entorno de depuración/prueba que todos los integrantes de su grupo pueden usar. Además, te obliga a resolver los problemas de empaquetado/implementación desde el principio que, aunque no son divertidos, te acercan un paso más hacia un proceso de desarrollo verdaderamente iterativo.

+0

La pregunta es sobre la ejecución ad-hoc y en desarrollo de una aplicación en un clúster remoto y no sobre CI/CD. –

15
  • Establezca la carpeta de salida del proyecto en la carpeta remota que montó (en Propiedades del proyecto-> Ruta de compilación de Java).
  • A continuación, ejecute la herramienta externa: ssh usuario @ rometesite -c "java -Xdebug -Xrunjdwp: servidor = S, = dt_socket transporte, dirección = 4000, suspender = n principal"
  • lanzamiento de una aplicación Java Eclipse remoto (puerto 4000)

ver http://www.ibm.com/developerworks/opensource/library/os-eclipse-javadebug/index.html para obtener información más detallada acerca de la depuración remota.

+1

Esto debería ser aceptado como la respuesta. – Eric

+0

Solo para tener en cuenta: en una Mac, el comando en la segunda viñeta generará un error de "tipo de cifrado desconocido". Funciona bien sin la bandera "-c". –

Cuestiones relacionadas