Как установить пакет для использования с JAVA? [Дубликат]

Никто не упомянул об этом, но есть и другая возможность. Я использую его для огромных запросов sql. Вы можете использовать. = Operator:)

$string = "the color is ";
$string .= "red";

echo $string; // gives: the color is red
121
задан ArtB 11 November 2012 в 23:34
поделиться

3 ответа

Что он делает

Maven - это «инструмент управления конструкцией», он предназначен для определения того, как ваши файлы .java скомпилированы в .class, упакованные в .jar (или .war или .ear), (pre / post) обрабатываются с помощью инструментов, управляя вашим CLASSPATH и всеми другими видами задач, которые необходимы для создания вашего проекта. Он похож на Apache Ant или Gradle или Makefiles в C / C ++, но он пытается быть полностью автономным в нем, что вы должны Нет необходимости в дополнительных инструментах или сценариях путем включения других общих задач, таких как скачивание и amp; установка необходимых библиотек и т. д.

Он также разработан вокруг темы «build portability», так что вы не получаете проблем с тем же кодом, что и один скрипт, работающий на одном компьютере, но не на другом (это известная проблема, у нас есть виртуальные машины для Windows 98, поскольку мы не смогли получить некоторые из наших приложений Delphi, компилирующихся где-нибудь еще). Из-за этого, это также лучший способ работать над проектом между людьми, которые используют разные IDE, поскольку скрипты Ant с IDE трудно импортировать в другие IDE, но все IDE в настоящее время понимают и поддерживают Maven ( IntelliJ , Eclipse и NetBeans ). Даже если вам не нравится Maven, он становится точкой отсчета для всех других современных инструментов построения.

Почему вы должны использовать его

Есть три вещи о Maven, которые очень милые.

  1. Maven (после того, как вы объявите, какие из них используете) загрузите все библиотеки, которые вы используете и библиотеки, которые они используют для вас автоматически. Это очень приятно, и дело с множеством библиотек смехотворно легко. Это позволяет вам избегать "аддитивного ада" . Он похож на Apache Ant Ivy .
  2. Он использует « Конвенция по конфигурации », так что по умолчанию вам не нужно определять задачи, которые вы хотеть сделать. Вам не нужно писать «компиляцию», «тест», «пакет» или «чистый» шаг, как вам пришлось бы делать в Ant или Makefile. Просто поместите файлы в те места, где Maven ожидает их, и он должен работать с летучей мыши.
  3. У Maven также есть много приятных плагинов, которые вы можете установить, которые будут обрабатывать многие обычные задачи из генерирование Java-классов из схемы XSD с использованием JAXB до для измерения тестового покрытия с помощью Cobertura . Просто добавьте их в свой pom.xml, и они будут интегрированы со всем остальным, что вы хотите сделать.

Начальная кривая обучения крутая, но (почти) каждый профессиональный разработчик Java использует Maven или желания они сделали. Вы должны использовать Maven для каждого проекта, хотя не удивляйтесь, если вам понадобится некоторое время, чтобы привыкнуть к нему, и иногда вы хотите, чтобы вы просто делали что-то вручную, так как иногда что-то новое болит. Однако, как только вы действительно привыкнете к Maven, вы обнаружите, что управление сборкой занимает почти нет времени.

Как начать

Лучшее место для начала - « Maven через 5 минут ". Это позволит вам начать с проекта, готового для вас, с кодом со всеми необходимыми настройками файлов и папок (да, я рекомендую сначала использовать артефакт quickstart, по крайней мере, сначала).

После того, как вы начнете, вам нужно лучше понять, как инструмент предназначен для использования. Для этого « Better Builds with Maven » - самое подробное место, чтобы понять, как это работает, « Maven: The Complete Reference » больше подходит для -Дата. Прочтите первый для понимания, но затем используйте второй для справки.

157
ответ дан Crt 22 August 2018 в 22:31
поделиться
  • 1
    Есть множество профессиональных разработчиков Java, которые не используют Maven и рады, что они этого не делают; некоторые из них просто отвергают его сложность и негибкость и придерживаются Ant или аналогичных, но все большее число из них - это люди, которые перешли к наследникам Maven, таким как Gradle and Buildr. Эти преемники унаследовали от Maven идею создания мощного набора шагов сборки из коробки, но сделать его очень легко добавить пользовательские шаги тоже. Учитывая их существование, я честно не думаю, что есть основания использовать Maven для новых проектов. – Tom Anderson 11 November 2012 в 23:16
  • 2
    Всегда есть вопрос, как подробно ответить на вопрос, но если вы являетесь средним разработчиком Java, который в вашем офисе, скорее всего, либо Maven, либо shitty Ant hell (Ant + bash + perl + build computer, настроенный с помощью магических путей). Если вы один из немногих счастливчиков, которые работают с разработчиками A + в хорошей среде со свободой выбора, есть другие варианты (Gradle - один). Но если вы работаете в среднем месте, Maven - лучший инструмент, который не позволяет вашим коллегам сотрудничать с чем-то заостренным. – ArtB 11 November 2012 в 23:23
  • 3
    Я не думаю, что вы должны быть разработчиком A + для использования Gradle. Я не понимаю, почему организация, которая могла бы принять Maven, не могла принять Gradle. Это правда, что Gradle позволяет вам стрелять себе в ногу, точно так же, как это делает Ant, но так, что Maven делает довольно сложно (и у меня есть коллекция моих коллег, чтобы доказать это); это компромисс, позволяющий делать вещи, которые Maven делает практически невозможным. – Tom Anderson 11 November 2012 в 23:58
  • 4
    Что касается использования чего-то вроде Gradle и избежания выстрелов, я предлагаю сортировку классиков программистов. Некоторые программисты не будут бояться редактировать скрипты сборки и получать более или менее правильные вещи. Эти люди полезны. Некоторые программисты боятся скриптов сборки и не будут трогать их. Эти люди, по крайней мере, не вредны; Я был в команде из 12 человек, где только двое из нас осмелились прикоснуться к сборке, и это действительно сработало довольно хорошо. Некоторые программисты не боятся скриптов сборки, но прикрутят их, если они прикоснутся к ним. Эти люди опасны. – Tom Anderson 12 November 2012 в 00:01
  • 5
    так что это похоже на npm для Java – KJW 9 October 2013 в 01:00

Из документа Sonatype doc :

Ответ на этот вопрос зависит от вашей собственной перспективы. Подавляющее большинство пользователей Maven собираются назвать Maven «инструментом сборки»: инструментом, используемым для создания разворачиваемых артефактов из исходного кода. Инженеры по строительству и менеджеры проектов могут относиться к Maven как к чему-то более всеобъемлющему: инструмент управления проектами. В чем разница? Инструмент построения, такой как Ant, ориентирован исключительно на предварительную обработку, компиляцию, упаковку, тестирование и распространение. Инструмент управления проектами, такой как Maven, обеспечивает надмножество функций, найденных в инструменте построения. В дополнение к предоставлению возможностей сборки Maven также может запускать отчеты, создавать веб-сайт и облегчать общение между членами рабочей группы.

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

Очень кратко, он работает на более высоком концептуальном уровне, чем (скажем) Ant. С помощью Ant вы должны указать набор файлов и ресурсов, которые вы хотите создать, а затем указать, как вы хотите, чтобы они были объединены вместе, и укажите порядок, который должен выполняться в (clean / compile / jar). С Maven это все неявно. Maven ожидает найти ваши файлы в определенных местах и ​​будет автоматически работать с этим. Следовательно, создание проекта с Maven может быть намного проще, но вы должны играть по правилам Maven!

9
ответ дан Brian Agnew 22 August 2018 в 22:31
поделиться
  • 1
    Почему? – Brian Agnew 11 November 2012 в 23:06
  • 2
    Я не уменьшал его, но, возможно, downvoters читали вашу цитату из пропаганды сонатипа как неявное одобрение тоталитарного «инструмента управления проектами» Maven. философии. – Tom Anderson 11 November 2012 в 23:11
  • 3
    Я не чувствую, что вы ответили на вопрос OP, вместо этого вы только что опубликовали маркетинговую информацию ... и что spiel - это rediculous , так как «управление проектами» намного больше больше , чем то, что Maven делает, чтобы запутать больше, чем помогает, ИМХО. – ArtB 11 November 2012 в 23:17
  • 4
    @Brian Извините, если мой предыдущий комментарий звучит огненно, но позвольте мне перефразировать его: я чувствую, что ваш комментарий только объясняет Maven хорошо , если вы уже понимаете, что такое Maven, но в качестве начальной отправной точки это не полезно. – ArtB 11 November 2012 в 23:25

Maven - инструмент построения. Наряду с Ant используются инструменты Java для построения. Если вы новичок на Java, а просто создаете с помощью своей среды IDE, поскольку Maven имеет крутую кривую обучения.

4
ответ дан Cratylus 22 August 2018 в 22:31
поделиться
  • 1
    Поддержка IDE для Maven в NetBeans очень хороша, что делает кривую обучения почти несуществующей. – Captain Giraffe 11 November 2012 в 23:10
Другие вопросы по тегам:

Похожие вопросы: