I am relatively new to the world of Java and Maven, but I couldn't imagine starting a new Java project without using Maven.
The idea of providing a human-readable project model is something that I would imagine is universally desirable across many languages. This is especially true when your application relies upon numerous external libraries.
Are there any other project management or build tools for languages other than Java that are similar in nature to Maven; that is, that provide a mechanism for the project maintainer to specify dependencies and build order?
Maven is a build automation tool used primarily for Java projects. Maven can also be used to build and manage projects written in C#, Ruby, Scala, and other languages.
What about [insert language here]? As of the current release, Maven supports pure Java and Beanshell. Java is the preferred language for it's familiarity and speed.
Maven is written in Java and is used to build projects written in C#, Scala, Ruby, etc.
However, as previously mentioned, the user may have a need for third-party plugins. Since the Maven project is assumed to have control over the default plugin groupId, this means configuring Maven to search other groupId locations for plugin-prefix mappings. As it turns out, this is simple.
Here's some I know of. As to whether they are the most appropriate tool for a given language, form your own opinion.
Arbitrary "integrations" can be handled by using the exec-maven-plugin to invoke the relevant compiler and binding the execution to the compile phase.
There are also Maven-like products such as Byldan for .Net
Updated with Flex Mojos and dotnet-maven-plugin at Pascal's suggestion.
Python setuptools works in a similar way to Maven in so far as specifying project dependencies. If the dependencies specified are available as eggs, tars or zip files then they can be automatically pulled in at installation or runtime.
You don't really need fancy plugins to manage just about anything that can be executed from command line. As an example I have put Maven builds around poorly managed .NET projects using technics described in this tutorial. Basically - plugins such as exec
, antrun
, assembly
and dependency
can be used together as I mentioned - to do practically everything you need.
Of course there are specialized, targeted plugins but I found out that these are hard to use with existing legacy stuff
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With