It is a YAML to POM converter:
Cool, eh? It converts a nice little compact YAML file into a giant ugly (and I do mean ugly) POM file.
For example - this concise 37 line "pom.yml" file:
Notice the profiles using a node reference (&core). This is a built-in YAML feature which makes it trivial to reuse giant redundant blocks of configuration, and only overwrite the values you want (in the example above, we overwrite the profile ID to be "test".
Gets converted to this 103 line pom.xml mess by running
Not a great example, really. It's nicer if you have a mountainous dependency list. Also, it'd be cooler if the POM wasn't nigh-gobbeldygook. Of course - you shouldn't really need to manage the POM xml if you use this script (and IDE integrations) anyway.
You know - if you really wanted to be slick, you could add something like
exec "ruby yaml2pom.rb pom.yml"to your
mvn.batversion). Then you could make projects with pom.yml files instead of pom.xml... the script will just generate pom.xml prior to execution.
Naturally, it helps if you know YAML.