HotSwap - Ant builds versus IDEA builds - help me understand

I'm fairly new to Web development, but experienced enough to know how important HotSwap is to UI developers.  The problem I've seen in both my former and current projects is that back-end people who don't use IDEA much create the build using an elaborate Ant build script, and front-end people never figure out how to teach their IDE how to produce an equivalent build, and this makes HotSwap impossible (I think).  I hope this makes sense.

So my questions are these:

  • Is this true:  "Nobody wants to maintain two separate builds (Ant versus IDEA) so Ant builds usually win and that's life."
  • Can I teach IDEA how to build our war by examining it and creating an Artifact that mirrors it exactly?  Is this going to be hard to do?
  • Am I missing something?

Thank you so much in advance.

P.S. By the way, to whom it may concern, I recently switched from Eclipse to IDEA and am truly amazed at what an incredible program it really is.

1 comment
Comment actions Permalink

IntelliJ can build your web application and deploy it remotely or locally. For development it is usually much easier to have a local instance of your web container. When deployed locally usually an exploded format is used which makes hot swapping classes and JSP much easier.

ANT is used to build the application for deployment it usually doesn't have anything to do with building inside the IDE for testing. IntelliJ is pretty smart and can usually build/deploy your web application locally with no (or very little) configuration on your part. This is especially true if your web application is already in exploded format in the source code (which is pretty common).

You need to setup an application server (which are global) and once those are setup you can assign it to your project in the Run Configurations.

Also, please note that the Community Edition doesn't support this. You need a license for the Ultimate edition.

1) Bulding in ANT and building in the IDE are two distinct things so the question doesn't really apply. If one person configures the project for local deployment and they commit the .ipr and .iml files to source control, and select Share Configuration in the Run Configuration only one person has to setup for local testing.
2) This is very simple although for local testing you will probably be deploying exploded rather than with a war.
3) Nope, you aren't missing anything.


Please sign in to leave a comment.