I'm having trouble understanding the benefits of the new way of organising the source code, as opposed to the source and project directory paradigm of previous IDEA versions. Specifically, I don't see how the following (which was very easy to do in IDEA 3.0) is possible without a major hassle in Aurora:
I have a package, heggland.reuse, containing classes I use in several of my projects. I want to be able to edit these classes from all my projects that use them. When I make a release build of a project, I want only the heggland.reuse classes that are actually used in the project, to be compiled to the output path.
This is easy in IDEA 3.0. I use the same source path for all my projects, and just add heggland.reuse to the project paths. When making the release build, I remove heggland.reuse from the project paths; the classes I use are compiled anyway.
In Aurora, I don't see how this is possible. If I want to share heggland.reuse between projects, it seems I have to put the package in its own separate directory, apart from my other heggland.* packages, which is a bit of a pain - now my code is all over the place, instead of in a single neat hierarchy. But I can't figure out how to make IDEA build the project like I want to, compiling just the necessary heggland.reuse classes. Compiling the main class compiles only the dependencies, but then resources aren't copied, so that doesn't help.
Do I have to use a build tool? Or have I misunderstood how Aurora wants me to use projects? I'm sure the new source code organisation scheme is supposed to be an improvement, but I'm afraid I don't see a single benefit. Can anyone make me see the light?