2011-02-04 10 views
8

Supongamos que deseo crear algún código de biblioteca que pueda compartirse entre varios módulos GWT.Mejor forma de compilar el código de biblioteca

¿Cuál es el método típico para reutilizar esta biblioteca. ¿Debo crear un módulo para la biblioteca y luego importarlo dentro de mi archivo .gwt.xml? ¿Hay alguna forma de lanzarlo como un frasco?

+4

¿Por qué se cerró esta pregunta? –

Respuesta

5

Hazlo como harías con cualquier módulo. No tiene que ser una aplicación web, no se necesitan archivos de configuración adicionales. Solo las fuentes empacadas en el archivo jar. Los únicos requisitos son reales:

  1. seguir las pautas de creación de módulos:
    1. preparar un archivo descriptor en *.gwt.xml directorio raíz de su módulo.
    2. Tiene un paquete client para las clases que están destinadas a ser compiladas a js y server para el resto.
  2. Asegúrese de incluir las fuentes en el archivo jar.

Lo que es interesante, si su módulo no depende de ninguna clase específica de GWT o usa jsni, también puede usarlo con aplicaciones Java "normales".

La respuesta a la segunda pregunta (cómo volver a utilizarla) es simple: agregue el jar recién creado a su classpath y herede este módulo en el descriptor de módulo de su aplicación web.

Y sí, una vez que lo tienes en un frasco, puede liberarlo ;-)

El perfecto ejemplo de este enfoque es Ext GWT (también conocido como GXT): http://www.sencha.com/products/extgwt/ sólo tiene que descargar esta biblioteca, desempaquetar y ver setup.txt para instrucciones de instalación y cómo se hace gxt.jar (un módulo reutilizable).

0

Creo que la forma más fácil es crear un nuevo proyecto (aplicación Web) y exportarlo como JAR. De esta forma, tienes tu biblioteca fuera de cualquier otro proyecto.

Cuando exporta la biblioteca como un JAR, no olvide incluir la fuente.

Entonces le añada la biblioteca a otro proyecto que tiene que:

  1. Añadir el JAR a la trayectoria de la estructura.
  2. Incluir una dependencia a su biblioteca en su descriptor de módulo (com.mycompany.myproject.Myproject.gwt.xml)

<inherits name='com.mylibrary.mylib.Mylib'/>

Otras cosas que usted puede hacer en su lib es incluir servidor código lateral, crear un tema (incluyendo css, imágenes, etc.), etc.

Esto es muy útil.

Espero que esto ayude.

0

¡Parece que ahora hay un Asistente de módulos Eclipse GWT de Google para esta tarea! http://code.google.com/webtoolkit/tools/gwtdesigner/wizards/gwt/module.html

En general, usted crea un módulo y luego lo hereda en su módulo de implementación. Puede implementar esto en varios módulos si lo desea.

+0

El enlace que especificó no parece tener relación con la pregunta. por favor elabora. –

+0

@Rabbi La pregunta del póster fue incipiente y demostró una comprensión prosaica de GWT. ¿Cómo se hacen módulos y se comparten? Bueno, podrías usar el asistente de módulos y también heredarlos. He agregado una aclaración a mi respuesta para definir estas facetas básicas de implementación del módulo. –

Cuestiones relacionadas