[Resolved] Изменение структуры проекта созданного из java архетипа

git
framework
infrastructure
java
maven
Теги: #<Tag:0x00007fedc09b7f20> #<Tag:0x00007fedc09b7b60> #<Tag:0x00007fedc09b7908> #<Tag:0x00007fedc09b7638> #<Tag:0x00007fedc09b70e8>

(breakmt) #1

Добрый день, нужна помощь по следующему вопросу - я хочу изменить структуру проекта созданного из архетипа с https://github.com/b...start-archetype. А конкретно:

  1. Убрать разделение в папке src на test и main, должно быть так: src-package-исходники,
  2. Вынести папки resources из test и main в корень проекта, переименовать в settings,
  3. Добавить в корне проекта папку resources, откуда будут браться тестовые данные
  4. Переименовать папку target в bin,
  5. Переименовать папку test-output в reports

Так вот, с этим возникли какие-то непредвиденные проблемы и я совсем запутался, в итоге пришлось откатиться назад. Теперь даже побаиваюсь что-то трогать, чтобы не сломать.

Прошу подсказать как можно, в моем случае, изменить структуру проекта и не бояться что все упадет?


(Sergey Korol) #2

Главный вопрос - зачем вам это?

Maven предлагает пользователям четко определенную структуру проекта. Это своего рода свод правил, к которым все привыкли и понимают.

Ну ладно еще фолдер с репортами переименовать для наглядности (что легко делается на уровне maven-surefire-plugin), но остальное то зачем менять? Тот же target вообще не должен попадать на уровень репозитория.

В общем, достаточно сомнительное мероприятие вы затеяли.

П.С. src / test / resources roots могут задаваться на уровне самой IDE.


(breakmt) #3

Наверное, вы правы. Честно говоря, я не знал что это какой-то стандарт, а думал что папки таким образом настроил человек, который делал архетип :blush:

Если так, то менять ничего не буду. Но чисто субъективно мне не нравится это разделение test/main и две папки resources.


(Sergey Korol) #4

Почему? Грубо говоря, представьте, что есть фреймворк, а есть тесты, которые юзают его API. Логично? Логично. А теперь представьте, что есть еще и ресурсы вашего фреймворка - внутренние проперти. А также - ресурсы ваших тестов - какие-нибудь testng конфиги. Миксовать все на каком-то одном уровне было бы неверно. К тому же, есть одностороннее ограничение на область видимости между мейном и тестами, что вполне логично ввиду последовательности билда.


(breakmt) #5

Спасибо за разъяснение, теперь стало намного понятнее