Maven + App Engine + плагин Google Eclipse

Могу ли я получить совместимый с Maven проект Google App Engine (Java), который также совместим с плагином Google Eclipse внутри Eclipse?

Спасибо!

РЕДАКТИРОВАТЬ:

Встроенная поддержка плагина Maven:

https://developers.google.com/appengine/docs/java/tools/maven

5 ответов

Решение

Зависит от того, что вы подразумеваете под "совместимым", и зависит от того, какие функции вы используете для плагина GAE. Мы используем плагин appengine maven http://code.google.com/p/maven-gae-plugin/ и eclipse, и они, похоже, отлично работают вместе, но мы не используем GWT или JDO. Как и с большинством вещей maven/eclipse, я считаю, что лучше всего запускать ваши вещи из командной строки и просто использовать eclipse в качестве редактора.

Я использую maven и GAE с одного года с JDO без проблем. Вот моя конфигурация на MacOSX Snow Leopard:

  • Apache Maven 3.0.3
  • Версия Eclipse: 3.7.1
  • m2e - интеграция Maven для Eclipse 1.0.100.20110804-1717

Для полной интеграции Eclipse с Maven (запустите все тесты как из командной строки "mvn test", так и из интерфейса JUnit внутри Eclipse) важно иметь файл.project следующим образом:

<?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>

Плагин переехал сюда: https://github.com/maven-gae-plugin/maven-gae-plugin

+1 к ответу Рика, но я хотел бы добавить это:

У Google есть учебник по этому вопросу: http://code.google.com/p/google-web-toolkit/wiki/WorkingWithMaven

Тем не менее, мы никогда не заставляли его работать на 100%. maven-gwt-plugin кажется, есть проблемы с Eclipse, и становится еще хуже, если вы используете RequestFactory из-за APT. maven-gae-plugin кажется, играет хорошо. Запуск из cmdline намного проще. Кроме того, в Eclipse 3.7/m2e есть известная ошибка [цитата нужна], которая мешает многим вещам работать правильно.

Как уже упоминалось, Google предоставил поддержку для Maven: https://developers.google.com/appengine/docs/java/tools/maven

Но, похоже, он не работает полностью с Eclipse (как упоминалось в одном из комментариев: "Расположение SDK".m2\repository\com\google\appengine\appengine-api-1.0-sdk\1.7.2\appengine-api-‌ 1.0-sdk-1.7.2.jar'не является каталогом ")

Чтобы решить эту проблему, я использовал maven-eclipse-plugin и указал контейнеры для 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>

Мои общие выводы о GAE + Maven + Eclipse.

Правило № 1: используйте архетип GAE для создания своего проекта GAE: https://developers.google.com/appengine/docs/java/tools/maven

Правило № 2: Если вы хотите разрабатывать с Eclipse - не делайте "mvn eclipse:eclipse", а затем импортируйте - это вызовет много проблем. Вместо этого импортируйте как "Maven Project"

Правило № 3: Простое / рабочее решение о том, как создать проект MVN/GAE/Eclipse, описанное на YouTube http://www.youtube.com/watch?v=oC6bJp5X3LI

PS. Я работаю над проектом с отдельными модулями Web/DAO/Domain - позже я опубликую свои выводы и подсказки.

Другие вопросы по тегам