GWT: можно ли ссылаться на не-GWT-модули, в которых описаны GWT-независимые презентеры?

Ради интереса разрабатываю маленький экспериментальный платформо-независимый MVP-фреймворк, причём с максимальной отвязкой от платформы. Пока сам фреймворк состоит из простеньких моделей, платформо-независимых презентеров (которые определены в одном модуле абстрактного приложения), а также платформо-зависимых представлений (сейчас располагаю весьма удачными эксперментами для Swing, Android и даже для терминалов). Тем не менее, при попытке адаптации приложения под GWT меня настигла неудача: GWT-приложения требуют наследования модулей с помощью `.gwt.xml`-файлов. Есть ли возможность обхода этой ситуации, чтобы можно было оставить абстрактный модуль без изменений и завязки на GWT? Структура проекта на Maven:


[root]
..[app] -- платформо-независимое приложение
....pom.xml -- ссылается на fx
..[app-gwt] -- GWT-представления, точка входа и т.д.
....pom.xml -- ссылается на app, fx, fx-gwt
....App.gwt.xml -- ссылается Fx.gwt.xml
..[fx] -- ядро
....pom.xml -- ни на что не ссылается
..[fx-gwt] -- адаптеры, специфические для GWT
....pom.xml -- ссылается на fx
....Fx.gwt.xml -- ссылается на ядро GWT
..pom.xml


Проще говоря, я не хочу, чтобы app или fx зависили от GWT каким-либо образом. Также были предположения, что правка с ссылкой на исходный код другого модуля может помочь, но у меня не получилось (если это вообще возможно).

Буду очень признателен за ответ или за дельные комментарии.

(Ради простоты, давайте считать, что ни app ни fx не имеют внешних зависимостей)
no image

Аноним

7 января, 00:56
445

Нет комментариев

Добавить комментарий
Вы не можете оставлять комментарии. Чтобы добавить комментарий, залогиньтесь или зарегистрируйтесь
Вы не можете голосовать. Чтобы проголосовать, залогиньтесь или зарегистрируйтесь

1 ответ

Спустя несколько одней пофиксил:

  • Нужно в GWT-модулях прописать фейковые .gwt.xml-модули, которые будут ссылаться на исходный код (!) подключаемых библиотек (для своих модулей для этого нужно использовать maven-source-plugin). Для этого нужно просто в GWT-модуле создать пакет (но на уровень выше) и там создать XML-дескрипторы. В элементне source нужно прописать пакет с более нижнего уровня.
  • Подключить таким образом созданные модули в основной модуль приложения через inherits
  • Немного подправить GWT-плагин для Maven: plugin - configuration - compileSourceArtifacts и указать в них подключаемые артефакты



Больше информации:

  • http://mojo.codehaus.org/gwt-maven-plugin/user-guide/library.html
  • http://www.gordonizer.com/2012/01/referencing-third-party-library-source.html
no image

Аноним

7 января, 01:31

Нет комментариев

Добавить комментарий
Вы не можете отвечать на вопросы. Чтобы ответить на вопрос, пожалуйста залогиньтесь или зарегистрируйтесь
Работа в Украине
Вакансии от WORK.ua
Senior iOS Developer (Swift)
Львов, RocketRoute Ltd.
Маркетолог, администратор, копирайтер (SMM), 6000 грн.
Николаев (Николаевская обл.), Агро тек, торговая с/х компания
Маркетолог, SMM-, контент-менеджер
Киев, Юбиай пак студия, ТОВ
Junior Front-End разработчик, 20000 грн.
Херсон, Транслойд
Вэб-мастер со знанием Drupal
Чернигов, Лоргано, ООО
Помощник в HR-отдел, Recruiting researcher (IT)
Харьков, Студия HR решений