Imagine a project where you want to adjust the standard build lifecycle of a packaging type. You want to do most of the build steps as definied by the packacking type except the deployment. You want to a let your own plugin do the work. In this case you have to skip the deploy goal of the deploy plugin. It is possible to set the skip property of the deploy plugin to true, but this will cause an error if you haven't specified a distribution management.
The deploy plugin defines the property deploymentRepository (http://maven.apache.org/plugins/maven-deploy-plugin/xref/org/apache/maven/plugin/deploy/DeployMojo.html#85).
Because of the dependency injection by plexus, plexus tries to resolve the ArtifactRepository which is not possible if there is no distribution management definied.
I don't know much about plexus, but it should be possible to define that property as lazy loading. I guess this will fix the problem.