Well, this just tells you that Maven has no idea what it should do. In general, you have the following options to perform build steps:
- Invoke a lifecycle phase, e.g.
This runs the lifecycle phase
mvn install
install
and all its predecessor phases likecompile
andtest
. Please see Introduction to the Build Lifecycle for more information about available lifecycle phases. - Invoke a plugin goal via the plugin prefix, e.g.
Eventually, the plugin prefix translates to a group id and artifact id of a plugin. Maven resolves plugin prefixes by first looking at the plugins of the current project's POM and next by checking the metadata of user-defined plugin groups.
mvn compiler:compile
- Invoke a plugin goal via the versionless plugin coordinates, e.g.
To resolve the plugin version, Maven will first check the project's POM and fallback to the latest release version of the plugin that was deployed to the configured plugin repositories.
mvn org.apache.maven.plugins:maven-compiler-plugin:compile
- Invoke a plugin goal via the fully qualified plugin coordinates, e.g.
mvn org.apache.maven.plugins:maven-compiler-plugin:2.0.2:compile
You can freely mix all of these styles within a single command line but you have to specify at least one goal/phase to get Maven going. Alternatively, you can define a default goal in your POM as shown below:
<project> ... <build> <defaultGoal>install</defaultGoal> ... </build> ... </project>