Here is what we do.
First, Eclipse is a development environment. Each developer uses Eclipse and does development and testing in what ever way works best for them, including deploying to their local app server.
Once code is written, tested and meets our various coding guidelines, the developer checks the changes into a central source code repository.
Then a continuous integration service (Hudson) does a build and test and deploys to a system test machine. There is another automated process that on a push-button deploys the app to production. In all cases, we use Maven and/or Ant to do our builds, testing and deployment.
We NEVER deploy from Eclipse into either the system/integration test or production environment - that is just asking for trouble.
(Your original post might have been Eclipse centric, but notice how I deftly turned it into an Ant/Maven-centric post!

)