Maven - делитесь регистратором для многомодульного проекта с модулями JavaME, JavaSE и Android - PullRequest
2 голосов
/ 26 марта 2012

Краткое введение:

Моя задача - создать многомодульный проект (для которого я выбрал Maven) с модулями для JavaME и Android. Более конкретно: я создаю приложение для телефонов, и мой начальник заставил меня сделать проект с общим общим кодом (кстати: я думаю, что он слишком сильно давит на совместное использование кода между JavaME и Android - эти два, основанные на языке Java, не ' Это значит, что делиться кодом между ними легко).

Проблема:

У меня есть три модуля:

  • common - написано для JavaSE 1.1, поэтому для его проверки не требуется эмулятор, и JavaME сможет использовать этот модуль,
  • jme - это написано против JavaME 2,
  • android - это (пока еще) написано против Android,

Я хочу иметь три разных регистратора, по одному для каждого модуля, которые имеют общий интерфейс, и, возможно, регистратор для общего модуля может быть базой (классом) для двух других регистраторов. Общие классы должны использовать тот же регистратор, что и модуль, который их включает, или третью версию регистратора для целей составления и тестирования этого общего модуля отдельно.

Вопрос:

Как настроить Maven таким образом, чтобы он включал разные версии класса logger при компиляции и тестировании разных модулей? Или, может быть, у вас есть разные предложения?

Обновление:

Прямо сейчас у меня есть собственный регистратор для JavaME, который использует RecordStore для хранения журналов и имеет простой способ извлечь указанный непрерывный диапазон журналов, преобразовать их в JSON, HTML и текст, а затем отправить их в пакетном режиме по электронной почте. Кроме того, он периодически удаляет старые записи из RecordStore. Я хотел бы сохранить такой функционал, т.е. простой способ извлечения и преобразования записей журнала.

1 Ответ

1 голос
/ 26 марта 2012

Для тестирования вы можете просто добиться того, чтобы с помощью соответствующей папки src / test / resources поместить конфигурацию для системы ведения журнала в вашу помпу и в нее вы могли определить другую систему ведения журнала в разных областях

   +-- pom.xml
        +--- common (pom.xml)
        +--- jme (pom.xml)
        +--- android (pom.xml)

, и вы можете определить в качестве зависимости (pom.xml) другую систему ведения журналов, отличную от jme (pom.xml) (scope: test).Я не уверен, поможет ли это вам, но проблема с различными платформами журналирования уже решена с помощью slf4j .

...