Downloading lib dependencies: Maven/Ant+Ivy/Other?

Any recommendations on the best way to leverage Ivy/Maven dependency-management with IntelliJ 7?

I have a web app that is currently built by IntelliJ-only (no ant or maven build).
There are multiple modules, and their required libraries are just manual downloads sitting in a lib directory.
Instead, I'd like to be able to automatically download all these libraries.

I know that IntelliJ has Maven integration, however I'm reluctant to embrace Maven fully as a build tool.
I'm more inclined to try the IntelliJ Ivy Plugin and create an ant target to pull down the libraries.

Any experiences/advice/alternatives to share?




Hey Chris,

We have a large, complicated build, and since we're using OSGi dependency management is really important - we have about 100 modules in our project. We use Ivy and it's been amazing, but it's a fair amount more work to set it up than it would be with Maven. But we've been able to automate all sorts of tasks that I can't imagine even approaching with Maven.

One weak point is IDEA integration - there are a couple of plugins but they're not very mature, I tried to adapt one of them but the project got left to one side because of limited time and the difficulty of plugin development. We have build written in Java, in the end I just rewrote the IDEA module files as part of the build, a bit, um, primitive but it has the advantage that it works and was very quick to develop.

Try Ivy - you'll love it!



We also use Ivy. Unfortunately, as Colin indicated, the couple of Ivy plug-ins for IDEA are rather limited. So you have to do a lot of manual work in IDEA to set up your dependencies, especially if you want javadoc and/or sources attached. I would love to see the support for Ivy in IDEA that Maven now enjoys. Like Colin, I too have toyed with the idea of writing such a plug-in, but never get very far due to the ramp-up time of learning the open-api for IDEA. I just haven't found the cycles to do such. But Ivy is a great utility.



Please sign in to leave a comment.