reus: Java строго типизированный язык и это хорошо. Динамические языки хороши только на маленьких проектах. В enterprise они не применимы как раз из-за возможности на лету создать переменную и т.п.
Web-разработка - очень обширное понятие. Моему окружению для Flask или Django достаточно virtualenv, а окружение для JavaEE куда сложнее, мягко говоря.