google app engine - run - Maven+App Engine+Google Eclipse Plugin
google app engine java (5)
¿Hay alguna manera de que pueda tener un proyecto de Google App Engine (Java) compatible con Maven que también sea compatible con el complemento Eclipse de Google dentro de Eclipse?
¡Gracias!
EDITAR:
Soporte nativo para un plugin de Maven ahora:
https://developers.google.com/appengine/docs/java/tools/maven
+1 a la respuesta de Rick, pero me gustaría agregar esto:
Google tiene un tutorial sobre esto: http://code.google.com/p/google-web-toolkit/wiki/WorkingWithMaven
Dicho esto, nunca hemos conseguido que funcione al 100%. El maven-gwt-plugin
parece tener problemas con Eclipse, y empeora si usa RequestFactory debido a APT. maven-gae-plugin
parece jugar muy bien. Correr desde cmdline es mucho más fácil. Además, hay un error conocido [cita requerida] en Eclipse 3.7 / m2e que impide que muchas cosas funcionen correctamente.
Como se mencionó, Google proporcionó soporte para maven: https://developers.google.com/appengine/docs/java/tools/maven
Pero parece que no funciona completamente con Eclipse (como se menciona en uno de los comentarios: "ubicación SDK ''.m2 / repository / com / google / appengine / appengine-api-1.0-sdk / 1.7.2 / appengine-api- 1.0-sdk-1.7.2.jar ''no es un directorio ")
Para resolverlo, he usado maven-eclipse-plugin y contenedores específicos para GAE / JRE:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-eclipse-plugin</artifactId>
<version>2.9</version>
<configuration>
<classpathContainers>
<classpathContainer>org.eclipse.jdt.launching.JRE_CONTAINER</classpathContainer>
<classpathContainer>com.google.appengine.eclipse.core.GAE_CONTAINER</classpathContainer>
</classpathContainers>
</configuration>
</plugin>
Depende de lo que quiere decir con "compatible" y depende de las funciones que use del complemento GAE. Usamos el complemento de appengine maven http://code.google.com/p/maven-gae-plugin/ y eclipse y parecen funcionar bien juntos pero no estamos usando GWT o JDO. Como con la mayoría de las cosas maven / eclipse, creo que es mejor ejecutar tus cosas desde la línea de comandos y simplemente usar eclipse como editor.
Uso maven y GAE desde hace un año con JDO sin problemas. Aquí está mi configuración en MacOSX Snow Leopard:
- Apache Maven 3.0.3
- Versión de Eclipse: 3.7.1
- m2e - Integración de Maven para Eclipse 1.0.100.20110804-1717
Una cosa importante para tener Eclipse completamente integrado con Maven (ejecutar todas las pruebas desde la línea de comandos "mvn test" y desde la interfaz JUnit dentro de Eclipse) es tener el archivo .project de esta manera:
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>PROJECT_NAME</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.jdt.core.javabuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.m2e.core.maven2Builder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.m2e.core.maven2Nature</nature>
<nature>org.eclipse.jdt.core.javanature</nature>
</natures>
</projectDescription>
El complemento se ha movido aquí: https://github.com/maven-gae-plugin/maven-gae-plugin
Mis conclusiones generales sobre GAE + Maven + Eclipse.
Regla nº 1: utilice el arquetipo de GAE para generar su proyecto de GAE: https://developers.google.com/appengine/docs/java/tools/maven
Regla no 2: si desea desarrollar con Eclipse, no haga "mvn eclipse: eclipse" y luego importe, ya que causará muchos problemas. En lugar de importar como "Proyecto Maven"
Regla nº 3: Solución simple / de trabajo sobre cómo crear el proyecto MVN / GAE / Eclipse descrito en YouTube http://www.youtube.com/watch?v=oC6bJp5X3LI
PD. Estoy trabajando en un proyecto con módulos web / DAO / Dominio separados. Más adelante, publicaré mis hallazgos y pistas.