Помогите Пожалуйста С Maven И Вообще Со Структурой Проекта.

Тема в разделе "Java", создана пользователем DarkMentat, 28 июл 2014.

  1. DarkMentat

    DarkMentat New Member

    Регистрация:
    28 июл 2014
    Сообщения:
    3
    Симпатии:
    0
    Здравствуйте!

    У меня тут вопрос возник, только вникаю в мавен, но так почитал и захотел с парой товарищей запилить один проектик используя эту вещицу. Скорее всего толком не вник, так что возможно неких вещей понимать не буду. В общем игрушка на андроид.

    И приблизительно я представляю структуру так:

    * Java либа с ядром, вся логика-механика. Там сорцы и юнит-тесты.
    * Android приложение, которое использует эту либу, тоже сорцы и юнит-тесты.
    * Java консольное приложение (или потом может и не консольное) которое тоже использует эту либу. Использоваться будет для проверок, можно сказать тестирования, но не кода, а баланса, разных сюжетных моментов итд.

    И вот я толком не знаю как подойти к этому делу, и вот тройка вопросов:

    1) Возможно ли это? Что либа на jdk7, проверочное консольное приложение тоже, а Android приложение соответственно на android-sdk. И Android или проверочное приложение автоматом подключают последнее ядро.

    2) Толково ли это? Как вообще принято в подобных ситуациях работать и не полный ли бред я написал чуть выше?

    3) Как это сделать? =) Можете рассказать хотя бы поверхностно (что включать, создавать) ?
     
  2. Kmet

    Kmet Well-Known Member

    Регистрация:
    25 май 2006
    Сообщения:
    1.017
    Симпатии:
    1
    1) возможно, разные проекты, даже в если они входят в один multi-module project могут иметь абсолютно разные настройки, собираться под разные jdk и тд
    2) с большего, это общепринятая практика. вам остается решить использовать ли multi-module project, или делать полностью отдельными проектами. Первый вариант проще, второй лучше маштабируется.
    3) если проект не совсем тривиальный, то поверхностно не получится, придется хотя бы одну человеку в команде более менее разобраться. можно начать от сюда http://maven.apache.org/guides/getting-started/index.html

    4) а еще можно использовать gradle
     
  3. -master-

    -master- Well-Known Member

    Регистрация:
    14 янв 2012
    Сообщения:
    629
    Симпатии:
    18
    Kmet и вы тут бываете... а чего так?
     
  4. DarkMentat

    DarkMentat New Member

    Регистрация:
    28 июл 2014
    Сообщения:
    3
    Симпатии:
    0
    Спасибо, что откликнулись!
    Я вообще не часто по форумам спрашиваю, но тут немало застопорился и хочется сделать не как-попало, а по-человечески)

    Как я понял, стоит сделать приблизительно так:

    Три проекта, в отдельных каталогах, в каждого свой pom.xml, где прописаны sdk, типы и все остальное. У двух из них в зависимостях либа, которая собирается в третьем проекте по ходу допиливания (указано просто относительный путь).
    Эти три каталога лежат в одном репозитории, никаких IDE'шных файлов там нет, только код и pom'ы. Ну и думаю Travis-CI (хотя в это еще не вникал) при пуше в либу ее пересобирает и пересобирает другие проектики.

    Про gradle слыхал, его хвалили как попрогрессивнее, но я какой-то мануал нашел про Travis-CI + Android + maven, да и в maven думаю стоит вникнуть, даже перед gradl'ом, что бы было, с чем сравнивать. Ну и все это я затеял, в принципе, что бы чуток пощупать CI и разные практики, которые используют большие дяди в своих серьезных делах))
     
  5. Kmet

    Kmet Well-Known Member

    Регистрация:
    25 май 2006
    Сообщения:
    1.017
    Симпатии:
    1
    -master-
    случается... нормальный вопрос, да еще и по яве=)

    DarkMentat
    приблизительно так, но можно еще эти проекты объеденить в multi-module project, в который вынести общие настройки, зависимости, плагины и тд.
    оба подхода приемлимы и, в целом, равнозначны. но для небольших проектов и команд multi-module project будет проще и удобнее.

    обычно используется следующая логика, если проекты имеют единый цикл разработки, релизятся вместе, то их объединяют в multi-module project

    если просто пощупать, то без разницы maven или gradle. это инструменты одной идеологии.
    разберетсь с одним, сможете использовать и второй, и buildr, и sbt и тд. С sbt я погорячился, с ним еще понадобится стать адептом черной магии=)

    с мануалами моветую быть осторожным, кто их сейчас только не пишет.....
     
  6. DarkMentat

    DarkMentat New Member

    Регистрация:
    28 июл 2014
    Сообщения:
    3
    Симпатии:
    0
    Еще раз спасибо за ответы, буду продолжать вникать =)
     
Загрузка...
Похожие Темы - Помогите Пожалуйста Maven
  1. limbra
    Ответов:
    3
    Просмотров:
    43
  2. uxbmw3w
    Ответов:
    0
    Просмотров:
    59
  3. GREED
    Ответов:
    1
    Просмотров:
    530
  4. Рая
    Ответов:
    3
    Просмотров:
    787
  5. sonia2000
    Ответов:
    0
    Просмотров:
    957

Поделиться этой страницей