oxygen mac kepler for developers descargar eclipse-plugin eclipse-rcp rcp launch

eclipse plugin - mac - Inicie la aplicación RCP desde main()



eclipse linux (3)

No estoy seguro de que sea realmente útil para usted, depende de por qué necesita comenzar otra aplicación, pero de todos modos ...

Leería la página wiki sobre la demostración del modelo de aplicación Equinox, que demuestra cómo se puede usar el servicio de administración de aplicaciones OSGi para controlar la aplicación. Puede obtener el código del CVS como se describe allí. También puede verificar el código en la clase org.eclipse.equinox.internal.app.AppCommands , concretamente en el método _startApp() , que también inicia una aplicación ya definida, y es la implementación del comando "startApp" en OSGi consola.

Tenga en cuenta que es posible que necesite ajustar la forma en que inicia la instancia de Eclipse desde la que desea iniciar la otra aplicación (por ejemplo, la opción de tiempo de ejecución eclipse.application.registerDescriptors consulte la página de ayuda ).

¡Espero que esto ayude!

Sé que es posible exportar mi aplicación rcp, crear un archivo .exe y ejecutarlo con el comando "Runtime.getRuntime (). Exec ()", pero me gustaría iniciar mi aplicación rcp desde el método principal de un java clase sin crear y llamar al exe. ¿Es posible?


Suponiendo que ya tiene OSGi ejecutándose, la respuesta de @Urbi es correcta. Si también necesita iniciar OSGi, tenga cuidado de hacerlo desde su propio hilo principal, es decir, el hilo inicial de su aplicación, ya que de lo contrario SWT no funcionará correctamente en todas las plataformas.

Eche un vistazo a org.eclipse.core.runtime.adaptor.EclipseStarter para conocer la forma de iniciar OSGi y su aplicación.


Simplemente cree una bifurcación del paquete org.eclipse.equinox.launcher que tenga una clase Main con la función principal estática (también conocida como el punto de entrada) que delegue en la función de ejecución. Puede subclase sobrescribir la función de ejecución y hacer lo que desea hacer.