Вопрос новичка о Maven - PullRequest
2 голосов
/ 11 мая 2010

Правда ли, что единственный файл конфигурации, который мне нужен, это pom.xml?

Мне кажется, что парни из Java живут xml больше, чем какие-либо другие вещи, это правда?

Ответы [ 3 ]

3 голосов
/ 11 мая 2010

Maven использует XML для файлов POM, потому что XML - хороший выбор для описания вещей ... а файл POM - это описание проекта. Я предполагал, что разработчики Maven могли бы изобрести собственный язык, но тогда многие люди жаловались бы на необходимость изучения другого синтаксиса языка.

Нет смысла выражать POM-файлы Maven на каком-либо языке сценариев, потому что они не являются «сценариями» в любом узнаваемом смысле.

Мне кажется, что Java-парни живут XML больше, чем какие-либо другие вещи, это правда?

Нет. «Ребята из Java» используют всевозможные технологии для настройки вещей: XML, JSON, файлы свойств, базы данных, языки на заказ, вы называете это кем-то, кто его использовал.

Если ваша проблема в том, что вы ненавидите использовать XML, либо:

  • преодолеть это,
  • получите редактор, который скрывает от вас синтаксис XML,
  • использование (дрожь) Make,
  • использовать (whimper) сценарии сборки, написанные на каком-то старомодном языке сценариев, или
  • иди и найди лучшее решение.

Но я останусь с Мейвеном, спасибо.

2 голосов
/ 11 мая 2010

Правда ли, что единственный файл конфигурации, который мне нужен, это pom.xml?

Да, Maven использует файл pom.xml для описания медаты проекта и расширения поведения Maven, также известного как файл объектной модели проекта (POM).

Maven также будет искать по умолчанию файл конфигурации для каждого пользователя в ~/.m2/settings.xml, но этот файл является необязательным.

Почему maven не использует сценарии для такой работы, я не вижу, чтобы xml имел здесь какое-либо преимущество, поэтому я не люблю ant

Что должен был использовать Maven в 2002 году, если не XML? Makefiles? На мой взгляд, XML был и остается очень неплохим выбором для декларативной объектной модели проекта. Да, XML является многословным, но он идеально подходит для работы и позволяет использовать такие полезные вещи, как проверка, преобразование, завершение кода, которые кажутся мне важными.

Теперь ничто не заставляет вас использовать Maven, если вам это не нравится и вы можете свободно использовать Gradle или Gant или Buildr (если размер их сообществ не является проблемой).

На всякий случай, обратите внимание, что Maven 3 предлагает поддержку полиглотов (см. этот пост и этот ), но, как я уже сказал, писать пом в Groovy, YAML и т. Д. Имеются только преимущества (например, проверка).

1 голос
/ 11 мая 2010

Вы, вероятно, тоже хотите уделить внимание файлу settings.xml . Тем не менее, по большей части вы правы, все в pom.xml

...