2012-08-05 25 views
5

estoy tratando de conseguir el servidor OSGi de Eclipse desde el lanzamiento de Juno y ejecutarlo independiente. Algunos tutoriales viejos dicen que sólo sacar la org.eclipse.osgi_VERSION.jar es suficiente para iniciarlo desde la línea de comandos comoindependiente OSGi (Equinox) servidor en Eclipse Juno

java -jar org.eclipse.osgi_VERSION.jar -console 

Cuando intento que, no muestra el símbolo como se esperaba, sino que se sienta en silencio, como esperando algo suceder

Sin embargo, puedo iniciar e instalar cómodamente haciendo ./eclipse -console, lo que obviamente no es una opción cuando se ejecuta en el servidor, donde quiero implementar paquetes en tiempo de ejecución.

Algunas búsquedas en Google revelaron que tengo que juntar los frascos (incluso el gogo de Apache Felix) de aquí y de allá, pero no pude encontrar nada concreto que me permitiera ejecutar esto de una manera "sin cabeza".

¿Hay una manera de hacer esto de una manera limpia y sencilla, o habría que sugerir que se cambie a Apache Felix?

+0

[Esta pregunta] (http://stackoverflow.com/questions/9905607/equinox-start-error-console-bundle-is-missed) parece relacionada. –

Respuesta

1

Deberías probar Apache karaf. Se puede ejecutar con Felix o Equinox y contiene todo lo que necesita para un servidor OSGi decente. Ver http://karaf.apache.org/

+0

Bueno, para ser sincero, ¡esto es a lo que recurrí al final! @ Christian Schneider Estoy mirando tus publicaciones ahora mismo ... – Tathagata

1

Prueba esto:

java -classpath ./plugins/org.eclipse.equinox.launcher_1.3.0.v20120522-1813.jar 
    org.eclipse.equinox.launcher.Main -console 
+0

que no ejecuta el servidor solo ... también inicia el eclipse. Gracias por responder ... – Tathagata

12

Equinox en Juno qué ya no contienen la consola fuera de la caja. Ahora se contiene en un paquete separado que implementa la consola de Equinox en la parte superior de la carcasa Apache GoGo.

Por lo tanto, la configuración mínima de paquetes para el funcionamiento de Equinox incluyendo la consola es:

  • org.eclipse.osgi
  • org.eclipse.equinox.console
  • org.apache.felifx .gogo.command
  • org.apache.felifx.gogo.runtime
  • org.apache.felifx.gogo.shell

Para ejecutar la consola SSH también es necesario:

  • org.eclipse.equinox.console.ssh
  • org.apache.mina.core
  • org.apache.sshd.core

Además, necesita usar un área de configuración diferente. Equinox lee la configuración (como lo haces de usar, sus niveles de arranque, lo que la aplicación para empezar, etc.) desde el config.ini. Por lo tanto, como a lo largo y cuando se utiliza la misma área de configuración como Juno que siempre va a terminar en su entorno de Juno. Usted puede dañar la instalación de Juno al modificar el config.ini directamente.

un mejor comienzo es descargar el kit de inicio Equinox Juno OSGi:

También puede probar una de las distribuciones de servidor OSGi Equinox:

+0

El kit de inicio Juno OSGi es básicamente el mismo jar que org.eclipse.osgi_VERSION.jar. Después de mucha consideración, decidí alejarme de Equinox para llegar a Felix (en realidad, a Karaf), principalmente por cuestiones de mantenimiento humano para las necesidades de nuestro proyecto, que por cualquier otra cosa. Pero gracias por tu respuesta, ¡definitivamente ayudó mucho! – Tathagata

0

Este enlace proporciona todos los detalles con respecto a la nueva consola que se basa en la cáscara de Apache Felix Gogo: http://help.eclipse.org/juno/index.jsp?topic=%2Forg.eclipse.platform.doc.isv%2Fguide%2Fconsole_shell.htm

En pasos cortos son:

  1. Coloque los haces necesarios en una carpeta. Los paquetes son: org.apache.felix.gogo.command_0.8.0v.jar org.apache.felix.gogo.runtime_0.8.0v.jar org.apache.felix.gogo.shell_0.8.0v.jar org.eclipse.equinox.console_1.0.0v.jar org.eclipse.osgi.jar

  2. crear una subcarpeta configuración y un archivo config.ini con el siguiente contenido

    osgi.bundles =./org .apache.felix.gogo.runtime_0.8.0v.jar @ start, \ ./[email protected], \ ./org.apache.felix.gogo.shell_0 .8.0v.jar @ start, \ ./[email protected] arte, \ osgi.console.enable.builtin = false

  3. Iniciar el marco Equinox con el siguiente comando: java-jar org.eclipse.osgi.jar

0

Para ejecutar con la edad consola, se puede invocar:

java -Dosgi.console.enable.builtin=true -jar org.eclipse.osgi_VERSION.jar -console

Tenga en cuenta que esto es usar la vieja (aplicación no Gogo) y el incorporado en la consola es probable que se elimine en algún momento. Sin embargo, debería considerar ejecutar con el shell Gogo, que es el estándar de facto para futuras versiones de Eclipse y Felix.

Cuestiones relacionadas