Муравей является все еще лучшим выбором для инструмента сборки Java? [закрытый]

В современных Javascript (FF4 +, IE9 +, Chrome 5+, Safari 5.1+, Opera 11.60+) есть Object.defineProperty. Этот пример в MDN очень хорошо объясняет, как работает defineProperty, и делает возможным динамические геттеры и сеттеры.

Технически это не будет работать на любом , но если ваши действительные геттеры и сеттеры определяются, например, вызовом AJAX на сервер JSON-RPC, например, вы можете использовать это следующим образом:

arrayOfNewProperties.forEach(function(property) {
    Object.defineProperty(myObject, property.name, {
        set: property.setter, get: property.getter
    });
});

20
задан Ludwig Weinzierl 30 May 2009 в 09:53
поделиться

9 ответов

Знаток

Это намного лучше, чем муравей, потому что для наиболее распространенных задач Вы не должны писать сложный build.xml, у знатока есть очень хорошие значения по умолчанию, и это - вся конвенция по конфигурации.

Это имеет также большой центральный репозиторий библиотек, и очень легко настроить его к, как, "используйте последнее стабильное свободное городское население - безотносительно". Знаток затем загрузит последнюю стабильную версию для Вас (больше никакой регистрации в банках в VCS) и если новая восходящая стабильная версия будет выпущена, то это загрузит его также. Конечно, столь же легко заблокировать его к некоторой определенной версии, должен Вы нуждаться в этом.

Это также хорошо интегрируется и с Netbeans и с Eclipse (m2eclipse плагин), таким образом, IDE соблюдает любые настройки (включая зависимости), Вы объявляете в файле pom.xml.

существуют также некоторые оборотные стороны знатоку: некоторые плагины скорее плохо документируются, интеграция с обоими IDE не действительно прекрасна, и что по-разному, некоторые сообщения об ошибках может быть трудно понять.

22
ответ дан 29 November 2019 в 23:23
поделиться

на предприятии муравей все еще, укрепляет плеер. зависимости не изменяются быстро. в отличие от проектов с открытым исходным кодом, которые продолжают движение к справедливо новейшей версии зависимых банок, БОЛЬШИНСТВО предприятий пытается НЕ изменить свои зависимости слишком быстро. Учитывая, что, преимущества знатока не слишком много по сравнению с муравьем.

С другой стороны, если Вы хотите некоторые функции знатока, у людей муравья есть плющ ( http://ant.apache.org/ivy/ ) для функции зависимостей.

, ЕСЛИ Вы хотите продолжить использовать муравья, овладейте "МУРАВЬЕМ В ДЕЙСТВИИ", 2-й выпуск так, чтобы можно было использовать муравья для лучшей производительности.

Удача,

5
ответ дан 29 November 2019 в 23:23
поделиться

Муравей является все еще крупным игроком. По моему опыту, это является доминирующим. Плюс, с Ivy, это обрабатывает некоторые преимущества Знатока. IMO, Муравей станет платформой для других инструментов: XML слишком тверд (см. ссылку ниже).

Знаток 2 является также крупным игроком. Я знаю людей, которые вполне как он и щетина при критических замечаниях, которые были верны для Знатока 1 (это проделало длинный путь).

Groovy предлагает некоторый интересный материал в пространстве сборки, потому что они основываются на Муравье. Gant используется в Grails, но может быть включен в категорию в Gradle. Они могут использоваться для Java также.

Рискуя жалким мой собственный блог, вот сообщение о Gant и Gradle. Вот ссылка на очень текущие дебаты об их будущем.

11
ответ дан 29 November 2019 в 23:23
поделиться

Некоторые люди как Ivy, который является зависимостью руководящая штука для Муравья, таким образом, я предполагаю, что людям, происходящим из среды Муравья, понравится он.

Другие как Buildr. Это - вещь JRuby, поэтому если можно манипулировать Ruby и Java в тех же проектах, затем я предполагаю, что это будет интересно.

Лично, я просто использую Знаток . Легко сделать на скорую руку файл pom.xml по умолчанию и иметь все команды сборки в Вашем распоряжении. И когда проект растет, Вы уже имеете в распоряжении инфраструктуру для рабочих плагинов и добавляющих зависимостей.

4
ответ дан 29 November 2019 в 23:23
поделиться

Вы также имеете Gant. Gant является Groovy + Муравей, можно записать задачи в отличной плоскости, и можно также назвать любую задачу Ant. Если Вы - магазин Java и хотите снова использовать навыки муравья, Вы имеете, но не любите XML, я рекомендую Gant, это ver легкий установить, и можно встроить его в муравья (и также назвать gant от муравья).

4
ответ дан 29 November 2019 в 23:23
поделиться

Мне действительно нравится SCons, который является инструментом сборки, конфигурационные файлы которого - все просто сценарии Python. Это обратится к любому, кто знает Python или подобные языки сценариев. SCons разработан для работы хорошо с Java, а также C/C++ и другими языками, и я был очень удовлетворен им в прошлом.

, поскольку файлы SCons записаны в Python, можно написать произвольный код Python, если Вы должны, чтобы сделать что-либо специальное. Однако, если Вы будете абсолютно незнакомы с Python, то затем возможно будет кривая высшего образования, чем попытка расширить Муравья или что-то подобное, чтобы сделать то, что Вы хотите.

1
ответ дан 29 November 2019 в 23:23
поделиться

Maven2, кажется, и ближайшая вещь.

Для наших проектов однако мы мигрируем назад на муравья по возможности.

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

И это - боль для проверки всех лицензий, включенных в зависимости зависимостей, которые могут подойтись к концу.

И может иметь более медленное время запуска, поскольку необходимо выяснить зависимости сами, но по крайней мере это легко читаемо. Никакое волшебное продолжение здесь :)

при использовании знатока не уделяет внимание внутреннему репозиторию как Nexus. Тем путем Ваше программное обеспечение не мертво, если некоторые библиотеки решают уйти от net*.

*We был записан с maven1; перенаправления репозитория ibiblio maven1 и maven1 не поддерживают перенаправления :(

1
ответ дан 29 November 2019 в 23:23
поделиться

Вы уже найдете некоторые ответы в , Каков некоторый хороший Java, делают утилиты? .

0
ответ дан 29 November 2019 в 23:23
поделиться

Я убедил бы Вас запуститься со своих требований при рассмотрении правильного инструмента. Каждый проект отличается, инструмент, который Вы используете, должен отразить пространство задач не вид.

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

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

0
ответ дан 29 November 2019 в 23:23
поделиться
Другие вопросы по тегам:

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