Как настроить хорошую среду сборки Java? - PullRequest
2 голосов
/ 09 октября 2010

Java / Eclipse.Разработка работает отлично.У нас есть либо Windows, либо FreeBSD для сервера сборки.

Для развертывания, хотя я бы хотел сделать следующее (очень автоматизированным способом):

1: выгрузить все из системы контроля версий (выполнить)

2: собрать весь исходный код (и все проекты зависимостей) с настраиваемым javac и аргументами (мы хотим посмотреть, не повлияет ли это на производительность различных компиляторов)1010 * 4: упаковать все ресурсы (.class, каталог "res /", внешние .jars и т. Д.) В jar.

5: создать веб-запуск .jnlp

6:Создать собственный установщик Windows (есть предложения?)

7) Для наших приложений для Android 4/5 вместо этого нужно встроить / войти в развертываемый пакет Android

Мы попробовали ant, но, похоже, оченьнеуклюжий и склонный к ошибке.Может быть, лучший способ сделать это - просто написать все это?Похоже, уже должен быть хороший способ сделать это.

Ответы [ 5 ]

5 голосов
/ 09 октября 2010

Мы используем maven для нашего процесса сборки, а Hudson в качестве сервера непрерывной интеграции, который делает наши сборки для нас. Чтобы создать установщик Windows, мы используем NSIS, который имеет плагин для Maven, и даже можем собрать установщик на Linux-коробке (вам нужно перекомпилировать некоторые библиотеки для компоновщика iirc).

Что касается Android, то никогда этого не делали, поэтому не уверены, что Maven пока что для этого подойдет. Но вы всегда можете встроить в него Ant, если вам нужно (используя плагин ant для Maven).

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

1 голос
/ 10 октября 2010

Мы оценили FinalBuilder на короткое время.Это очень мощный инструмент для интеграции различных задач сборки-выпуска.

Затем мы переключились на Hudson, который запускает сценарии ant и сценарии Schell.Наличие hudson будет полезно для выполнения других задач, таких как запуск инструментов проверки кода, создание экземпляра виртуальной машины, развертывание вновь созданного установщика, запуск тестов и т. Д.

InstallAnywhere позволяет вам создать собственный установщик для приложений Java.,Но не бесплатно.

1 голос
/ 09 октября 2010

Рассмотрим TeamCity .Это не бесплатно, но это хороший инструмент для непрерывной интеграции.

0 голосов
/ 09 октября 2010

Я бы посоветовал вам пересмотреть Ant.Если есть определенные задачи, которые неудобны, вы можете использовать задачу exec для запуска оболочки или написать свои собственные задачи ant на Java.Это все еще позволяет вам использовать Ant для координации всей сборки.Вы можете сделать Ant немного менее подверженным ошибкам, определив макросы, чтобы уменьшить взрыв и вставку.

Maven имеет много приятных функций, но это проще настроитьначало проекта.Много работы по преобразованию существующего проекта в Maven.Вы можете получить управление зависимостями Maven, используя Ivy вместе с Ant.

0 голосов
/ 09 октября 2010

Если вы знакомы с Groovy, вы можете рассмотреть Gant ... всю мощь Ant в сочетании с гибкостью кодирования Groovy.

...