Hi all, I've written (not polished yet) a task for generating an IntelliJ .ipr project file. As well as other things, it can take <classpath>s and <src> specifications, and generate a working IntelliJ IDEA project file with those source directories and against those classpaths.
(FYI: IntelliJ IDEA is a way-cool Java IDE, http://www.intellij.com/) I'm quite happy to contrib this to Jakarta Ant when it is ready; description follows, I have some questions at the bottom. RATIONALE: - We use Ant. - We have a quite few developers that use IDEA, and we are often working on several projects at once. - All our projects are version controlled (ant files version controlled as well, of course). - Each developer maintains their own IDEA file, and they are not checked in. - Our classpaths for our projects change semi-regularly (updated library versions, etc.) -- this just means a change in one ant file. Sourcepaths change occasionally, also. But each developer must make changes to their own IDEA project files each time. - Checking IDEA project files into version control is inelegant because that means changes in two places (ant build file and IDEA .ipr file). - It often takes new developers a while to create their own IDEA project files from scratch. therefore... - use the information in your ant file to generate the IDEA project file 'automatically'. TASK USAGE: Basic usage looks like this: <intellij file="foo.ipr"> <classpath> <pathelement location="some/directory/thirdparty.jar"/> <path refid="compile.classpath"/> </classpath> <src> <pathelement location="source/common/code"/> <pathelement location="source/other/code"/> </src> </intellij> and will generate a foo.ipr file. Multiple (or none) <classpath> and <src> are supported, of course. <intellij> also supports a jdk attribute, which tells IDEA which JDK to use (same as "File | Project Properties | Target JDK"). You can also specify a <antfile> sub-tag to <intellij> that configures the IDEA's ant integration (same as "Window | Ant Build | ..."). <antfile file="./build.xml"/> I intend to add a few more options that IDEA supports (.class file output directory, javadoc, etc). I've tested with IDEA 2.5, but I will test with the previous version as well. If necessary, I will add a version="..." attribute if there are any incompatible differences. QUESTIONS: Any comments about the structure of the <intellij> task, or its name? Any specific features of IDEA that you would like to be able to configure from the <intellij> task? :) =Matt -- Matt Quail -- Senior Software Engineer http://www.cortexebusiness.com.au/ mailto:[EMAIL PROTECTED] -- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>
