Что значит "Mavenize" проекта?

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

Мне комфортно работать в командной строке или в Eclipse/Netbeans. Я знаю, что есть много плагинов для 2 IDE, которые делают это проще, но я не знаю, с чего начать.

Есть ли что-то еще, чем просто писать файл pom со всеми зависимостями в нем?

Ответы

Ответ 1

"Mavenize" просто означает писать POM (и, возможно, перемещать код вокруг), чтобы он строился в Maven.

Часто самый простой способ сделать это - немного изменить структуру кода, чтобы он соответствовал соглашениям Maven (например, переместить "источники" в "src/main/java" и явно разделить отдельные модули). Вы можете игнорировать соглашения и рассказывать Maven, как вы храните свои классы и т.д., Но в целом небольшая часть боли впереди, чтобы заставить большую часть Maven работать "из коробки" стоит инвестировать.

Скорее всего, подавляющее большинство вашего файла Ant (или подобного) является шаблоном, что в первую очередь было идеей Maven. Тем не менее, там может быть какой-то на заказ материал (например, тестовые классы, начинающиеся с "TestIntegration", должны выполняться только на ночных сборках), которые вам нужно воспроизвести в Maven.

Но да, в общем, это означает использовать существующую функциональность сборки и воспроизвести ту же функциональность с помощью Maven.

Ответ 2

Это означает реорганизацию кода проекта и ресурсов для соответствия модели maven. Это использование "соглашения по конфигурации" позволяет стандартным инструментам maven работать на вашей кодовой базе.

Ответ 3

В дополнение к тому, что сказано.

Можно всегда преобразовать существующий проект java в проект maven с eclipse IDE, плагин m2eclipse поддерживает такую ​​функцию или опцию, как показано ниже: После установки плагина m2eclipse и перезапуска eclipse. Щелкните правой кнопкой мыши проект java - "configure -" convert to maven

У вас будет сгенерированный pom для начала, почти всегда он нуждается в модификациях, чтобы соответствовать зависимостям проектов и репозиториям, если эти зависимости не находятся в центральном репо maven.