Моя инфраструктура выглядит так для веб-приложения, в котором я участвую:
- IntelliJ Идея, я просто использую это в течение некоторого времени, но я предполагаю, что любая наполовину современная IDE сделает это, просто изучите один и изучите его хорошо, так что читайте NetBeans, JDeveloper, Eclipse, но я никогда не использовал один из них дольше время
- Teamcity, Непрерывная интеграция (которую я люблю за отложенную регистрацию и удаленные запуски, никогда больше не проверяйте сломанную ветку!)
- Maven и Artifactory, Управление зависимостями для нашего программного стека
- Tomcat (или Glassfish)
- SVN as SCM
На стороне lib я использую
- Весна
- Hibernate
- JSF + Тринидад
- Spring Webflow
- JUnit
- Фитнес
- EasyMock
Я полагаю, что для разработки вам следует рассмотреть что-то вроде HSQL или чего-то подобного, не заставляйте себя зависеть от больших баз данных, и вы не можете запускать / тестировать свои вещи в дороге; -).
Самое сложное в начале здесь - правильно настроить все в maven. Это не задача, которая занимает всего 5 минут, но я думаю, что она того стоит. Я еще не играл с Айви, но, может быть, это тоже будет хорошим решением. Я не хочу больше разбираться со скриптами муравья, они легко выходят из-под контроля, если ваш проект растет.
В Windows / Linux / Mac все работает так, как вы ожидаете от Java и современной IDE.