Как я могу запустить проект GWT/Errai из IntelliJ 11 Community Edition?
Что мне нужно сделать, чтобы настроить конфигурацию рабочего прогона для проекта GWT с использованием Errai в IntelliJ IDEA 11 Community Edition (который не включает в себя плагин GWT)?
Я нашел инструкции по запуску проекта GWT в IntelliJ Community Edition и инструкции по работе с GWT, CDI и Errai в Eclipse, но когда я их собрал, конфигурация запуска не загружает мое приложение. Какая конфигурация нужна?
1 ответ
Чтобы запустить проект GWT/Errai из IntelliJ 11 Community Edition, выполните следующие действия:
Добавьте GWT, Errai и исходный каталог вашего проекта в classpath
- Перейдите в Файл> Структура проекта и в разделе Настройки проекта выберите Модули. Выберите вкладку Зависимости.
- Вы можете нажать желтую кнопку "плюс" и выбрать "Банки или зависимости", чтобы добавить зависимости. Таким образом, добавьте gwt-dev.jar и gwt-user.jar (из GWT SDK) и каталог, содержащий все ваши jar-файлы Errai (то есть: errai-marshalling-(version).jar, errai-data-binding-(версия).jar). Убедитесь, что версия этих jar-файлов соответствует вашим зависимостям Maven (или другого инструмента сборки).
Таким же образом добавьте каталог src вашего проекта. Это может выглядеть как "пустая библиотека", но не удаляйте ее. Откройте файл.iml вашего проекта и найдите строки, ссылающиеся на каталоги /src и / или /src/main/java. Если они находятся под элементом SOURCES, вместо этого переместите их в классы CLASSES, чтобы у вас было что-то вроде следующего. Благодарим пользователя Vic из Stack Overflow за этот взлом, внесенный в этот пост.
<library> <CLASSES> <root url="file://$MODULE_DIR$/src" /> <root url="file://$MODULE_DIR$/src/main/java" /> <root url="file://$MODULE_DIR$/src/main/webapp/WEB-INF/classes" /> </CLASSES> <JAVADOC /> <SOURCES /> </library>
Создать конфигурацию запуска
- Создайте новую конфигурацию запуска приложения ("Выполнить"> "Изменить настройки"> "+"> "Приложение").
- В качестве основного класса укажите com.google.gwt.dev.DevMode.
- Выберите свой проект в меню "Использовать путь к классу модуля", если он еще не выбран.
Добавьте программные аргументы, эквивалентные следующим, подставляя параметры вашего проекта. Чтобы получить описание всех допустимых аргументов, запустите конфигурацию без имени и проверьте вывод.
-noserver -server org.jboss.errai.cdi.server.gwt.JettyLauncher -war /path/to/project/exploded/war/dir -logLevel INFO -startupUrl App.html project.module.App
Запустите конфигурацию и нажмите "Запустить браузер по умолчанию" в окне "Режим разработки GWT". Надеюсь, ваше приложение теперь загрузится.
Поиск проблемы
- Если вы получаете исключения, убедитесь, что вы проверили выходные данные на вкладке "Приложение" в окне "Режим разработки GWT", поскольку выходные данные здесь не обязательно отражаются в браузере или журнале IntelliJ и могут быть ключевыми для диагностики проблем.
- Если вы получили исключение 'java.lang.RuntimeException: отложенное связывание не удалось для'org.jboss.errai.ioc.client.Bootstrapper' (вы забыли унаследовать необходимый модуль?)', Проверьте на вкладке App. Вероятно, вы забыли наследовать модуль GWT; выход покажет, какой.
- Если вы получаете ошибки сортировки, убедитесь, что в вашем файле ErraiApp.properties перечислены все сериализуемые типы и что основная и тестовая копии этого файла совпадают.