\u001B[1mSYNOPSIS\u001B[0m
    ${project.description}

    Original Maven URL:
        \u001B[33mmvn:${pkgGroupId}/${pkgArtifactId}/${pkgVersion}\u001B[0m

\u001B[1mDESCRIPTION\u001B[0m
    Groovy...

        * is an agile and dynamic language for the Java Virtual Machine
        * builds upon the strengths of Java but has additional power features inspired by languages like Python,
          Ruby and Smalltalk
        * makes modern programming features available to Java developers with almost-zero learning curve
        * supports Domain-Specific Languages and other compact syntax so your code becomes easy to read and
          maintain
        * makes writing shell and build scripts easy with its powerful processing primitives, OO abilities and
          an Ant DSL
        * increases developer productivity by reducing scaffolding code when developing web, GUI, database or
          console applications
        * simplifies testing by supporting unit testing and mocking out-of-the-box
        * seamlessly integrates with all existing Java classes and libraries
        * compiles straight to Java bytecode so you can use it anywhere you can use Java

\u001B[1mSEE ALSO\u001B[0m
    \u001B[36mhttp://groovy.codehaus.org/\u001B[0m
