Nuestro grupo es algo nuevo en el desarrollo basado en JVM. Estamos desarrollando aplicaciones que están compuestas por muchas otras bibliotecas.Gestión de dependencias con aplicaciones Play 2.0
Creemos que Play Framework es muy atractivo para el desarrollo de aplicaciones web. El marco es genial, pero la gestión de la dependencia de nuestras bibliotecas desarrolladas localmente es algo irritante. Estamos utilizando el RC2 de Play 2.0, y si bien somos capaces de obtener cambios en nuestras bibliotecas cargadas en Play, definitivamente es un proceso incómodo que interrumpe el proceso de reproducción normalmente fluido.
Lo que estamos haciendo es empujar nuestras bibliotecas a nuestro repositorio Maven local (en cada máquina de desarrollador) y luego importar esas mismas bibliotecas de nuevo al proyecto Play. Funciona, pero como dije, es incómodo.
¿Hay alguna de las mejores prácticas que deberíamos emplear que haga que esto funcione de una manera más fluida?
Fwiw, estamos usando IntelliJ 11,0 (Ultimate)
============ ============ EDITAR
I' Estoy obteniendo buenas respuestas sobre cómo mejorar mi proceso de compilación Maven, y lo aprecio. Sin embargo, esta no es exactamente la respuesta que estoy buscando.
Para hacer esto concreto, suponga que estoy creando un Servicio y una Aplicación Web para supervisar/administrar el servicio. ¡El servicio es un proyecto simple de Java/Scala y la aplicación web es un juego! proyecto. Llamaremos a estos 'Servicio' y 'Aplicación'. (Por favor, no se deje engañar por esta estructura propuesta, la estoy simplificando para los fines de la pregunta)
En Eclipse o IntelliJ, puedo agregar el Módulo de 'Servicio' (o Proyecto para Eclipse) como una dependencia de el proyecto 'App'. Esto permite un cambio de desarrollador muy rápido al realizar cambios en la biblioteca 'Servicio' (por ejemplo, agrego una propiedad a un modelo). Recompilar y ejecutar es un par de órdenes de magnitud más rápido que compilar, empaquetar, implementar, importar y volver a cargar el navegador.
Basado en mi lectura de la documentación de Play 2.0 y SBT, mi única respuesta real es hacer de 'Service' un proyecto secundario de 'App'. ¿Hay una mejor respuesta para esto?
Aprecio lo que dices, pero todavía estás tratando de mejorar un proceso que estoy tratando de eliminar. Voy a editar la pregunta para aclarar esto un poco. –
@AndyDavis ver actualización –
Gracias de nuevo por su entrada. Si pudieras echar un vistazo a mi ejemplo y ver si los subproyectos son el camino a seguir, te lo agradecería. –