views:

63

answers:

3

I've been leading rather large project that strives to "Mavenize" various testing apps produced by the engineering tools group over past 5+ years to test and optimize our home-built database. So far our group managed to successfully retrofit (beside obvious Java) few Coldfusion-based apps, PHP app, large .NET app with about 30 modules and currently working on roughly 40 C/C++ apps. Actually, once you abstract yourself from Java-centric nature of Maven and throw in few useful plugins such as antrun, exec, assembler and resource you can pretty much figure out way of "Mavenizing" just about anything.

So my question is - are there people who had this sort of experience - using Maven to manage non-Java projects? What was it? What language/technology? What did you end up using? How? Were you successful? And if not - what did you end up using as alternative?

+1  A: 

We're using Maven to build a Flex application, and it's working quite nicely :).

Andrew Aylett
Can you elaborate on it if possible? Is there flex-plugin?
DroidIn.net
Sonatype has Flexmojos http://flexmojos.sonatype.org/
Pascal Thivent
I'm going to accept this as answer since it was a first one and it did contain some useful info :)
DroidIn.net
+2  A: 

Conceptually, Maven is not Java centric but Java is monopolizing most efforts as written on Wikipedia:

Theoretically, [Maven's plugin-based architecture] would allow anyone to write plugins to interface with build tools (compilers, unit test tools, etc.) for any other language. In reality, support and use for languages other than Java has been minimal.

Having that said, I don't have any personal experience of maven with something else than Java. But I can suggest to check out Maven for other languages? :)

Pascal Thivent
+1  A: 

I have used maven for generating documentation based on LaTeX source files. Using exec and some wrapper scripts, I can create PDF files and handle SCM releases.

One of the PDF files generated is included in a web app by letting maven package it into a jar file, which is referenced from the web app as a regular dependency. The web app can then access the PDF file on the class path.

Filip Korling