[Ann] Aurora2Ant version 0.1

Announcing Aurora2Ant version 0.1, available via the Plugin Manager. Aurora2Ant is an IDEA plugin which will generate Ant build files from an Aurora project. For multi-module projects, Aurora2Ant can generate either a single unified build file, or a hierarchical build file structure, consisting of one build file per module plus a single project-level build file which just calls out to the module-level build files. Build files generated by Aurora2Ant may need to be modified after creation with project-specific build tasks (e.g. rmi stub generation, jar/war/ear creation), but no support for regenerating build files after such modification is currently provided. Aurora2Ant build files include the following targets:

*clean *-- clean up all build artifacts
*compile *-- compile the source for the project
*compile-tests * -- compile the tests for the project
*test *-- run all the JUnit tests for the project, writing the test results into a "test_results" directory. Alternatively, this task can run a single test class if it is specified in the test.class property
*javadoc *-- compile the javadoc for the project. Note that for multi-module projects, each module gets it's own javadoc directory
*all *-- run the full build. Equivalent to running clean, compile, compile-tests, test, and javadoc in succession

Project/Module concepts currently supported by Aurora2Ant
--modules, content roots, source folders, test folders, exclude folders, module dependencies, module/project/application libraries, dependency ordering.

Project/Module concepts not-supported by Aurora2Ant, but which probably will be eventually
--JDK selection, enabling/disabling of "assert" keyword, overlapping source/test folders, jar file creation for Java modules, special processing for J2EE/EJB/Modules, javadoc settings

Aurora2Ant has been tested with Aurora EAP build 1032. Aurora2Ant build files are provided with no
gaurantees whatsoever, and should be checked before first use (particularly 'clean' targets, for obvious reasons). Aurora2Ant relies on internal IDEA APIs which are seem to still be in flux, so if a later build of Aurora breaks Aurora2Ant, I won't be a bit surprised. Please let me know of any issues you have, or suggestions for improving Aurora2Ant.

--Dave Griffith

3 comments
Comment actions Permalink

I suppose the opposite, Ant2Aurora, is much more difficult?

For the projects I am working on, the Ant build.xml files are the 'golden sources', i.e. all the changes are made to the build.xml files. Not everyone here is using IntelliJ.

Within Intellij, I use Ant to compile, jar, deploy, run, etc.
But when I want to debug, I then need to update the project to make sure all the classpath and jvm args are correct. In general, the classpath is usually correct, because that is needed for the error correction to work. But sometimes I need to work on a program which I am not actively developing, and then I need to create a new project and configure all the libraries, etc.
It would be nice to be able to click on a task and suck in the classpath, and/or then click on a ]]> task and suck in the program classpath/args.



Attachment(s):
intellij_ant_build.gif
0
Comment actions Permalink

>I suppose the opposite, Ant2Aurora, is much more >difficult?

Essentially impossible, or at least really difficult. Ant doesn't specify any sort of declarative project structure. You would have to infer one from an Ant build file, and then translate that structure into Aurora .ipr/.iml files. Way beyond the scope of what I was attempting here. If you were using Maven it would be much easier, but that brings another whole raft of issues with it.

>For the projects I am working on, the Ant build.xml files are the 'golden sources', i.e. all the changes are made to the build.xml files. Not everyone here is using IntelliJ. Within Intellij, I use Ant to compile, jar, deploy, run, etc.

That's my use pattern as well, and it seems pretty common. In that case Aurora2Ant would mostly be useful for initial creation of build files on new projects.

--Dave Griffith

0
Comment actions Permalink

I am also looking for reverse (Ant2Aurara) the same was discussed at

http://www.jetbrains.net/devnet/thread/285308?tstart=0

i.e ipr file creation can be done with the classpath, bootpath referenced id of ant script.

Regards,
Nagendra

0

Please sign in to leave a comment.