Fork me on GitHub

Echo Maven Plugin

Aren't you sometimes in the situation to print out something useful during a Maven build? What was the default answer to solve this? Yes use the Maven-AntRun plugin and do the output via Ant-Task. So to solve this problem in a Maven way i wrote this little plugin.

Usage

<project>
  ...
  <build>
    <plugins>
      <plugin>
        <groupId>com.soebes.maven.plugins</groupId>
        <artifactId>echo-maven-plugin</artifactId>
        <version>0.5.0</version>
        <executions>
          <execution>
            <id>echo-first-time</id>
            <phase>validate</phase>
            <goals>
              <goal>echo</goal>
            </goals>
            <configuration>
              <echos>
                <echo>This message is very early in the build process.</echo>
              </echos>
            </configuration>
          </execution>
          <execution>
            <id>echo-info</id>
            <phase>prepare-package</phase>
            <goals>
              <goal>echo</goal>
            </goals>
            <configuration>
              <echos>
                <echo>This is line Nr. 1</echo>
                <echo>This is line Nr. 2</echo>
                <echo>This is line Nr. 3</echo>
              </echos>
            </configuration>
          </execution>
          <execution>
            <id>echo-warning</id>
            <phase>prepare-package</phase>
            <goals>
              <goal>echo</goal>
            </goals>
            <configuration>
              <logLevel>WARNING</logLevel>
              <echos>
                <echo>Warning: This is line Nr. 1</echo>
                <echo>Warning: This is line Nr. 2</echo>
                <echo>Warning: This is line Nr. 3</echo>
              </echos>
            </configuration>
          </execution>
          <execution>
            <id>echo-error</id>
            <phase>prepare-package</phase>
            <goals>
              <goal>echo</goal>
            </goals>
            <configuration>
              <logLevel>ERROR</logLevel>
              <echos>
                <echo>ERROR: This is line Nr. 1</echo>
                <echo>ERROR: This is line Nr. 2</echo>
                <echo>ERROR: This is line Nr. 3</echo>
              </echos>
            </configuration>
          </execution>
          <execution>
            <id>echo-debug</id>
            <phase>prepare-package</phase>
            <goals>
              <goal>echo</goal>
            </goals>
            <configuration>
              <logLevel>DEBUG</logLevel>
              <echos>
                <echo>DEBUG: This is line Nr. 1</echo>
                <echo>DEBUG: This is line Nr. 2</echo>
                <echo>DEBUG: This is line Nr. 3</echo>
              </echos>
            </configuration>
          </execution>
        </executions>
      </plugin>
    </plugins>
  </build>
  ...
</project>