plugin compiler java maven-2 groovy dependencies gmaven-plugin

java - compiler - maven compilar groovy



groovy-eclipse-compiler maven (3)

Tengo una situación en la que algunos de mis códigos groovy hacen referencia a mis archivos java, pero también tengo diferentes archivos java que hacen referencia al mismo código groovy. Cuando intento compilar en maven, o tengo que compilar el groovy antes o después del java, y eso no funcionará realmente, ya que el código groovy depende de algunos archivos java, y los diferentes archivos java dependen del código groovy. ¿Hay alguna manera de manejar este tipo de dependencia?


Debería poder compilar su código agregando el plugin gmaven a su maven pom.xml. Genera stubs Java de su código groovy para tratar el tipo de referencias entre idiomas con los que está tratando. Lo uso bastante y funciona muy bien.


Puedes dividir el código en capas y las capas inferiores llamar a las capas superiores, pero nunca al revés. Por ejemplo, en una aplicación web puede tener una capa de vista, una capa de servicio y una capa de persistencia. La capa de vista llama a la capa de servicio y la capa de servicio llama a la capa de persistencia, pero la capa de persistencia nunca llamará a la capa de servicio o a la capa de vista. Si desea que groovy / java code exista en la misma capa, asegúrese de que uno llame al otro, pero no se llaman entre sí. La conclusión es que debes evitar las dependencias bidireccionales.


Sí, solo usa GMaven . Como es un compilador conjunto, administra automáticamente las dependencias java a groovy y groovy a java.

Brevemente, necesitarás:

  • incluye el gmaven-plugin en tu pom.xml ;
  • mantén tus clases groovy bajo src/main/groovy o src/test/groovy ;
  • enlazar el plugin gmaven a las fases relevantes del ciclo de vida.

Para obtener más detalles, consulte la compilación de proyectos geniales .