abstract protected void postConfigure(T task, MavenArtifactRepository artifactRepository);
abstract protected T createDeployTask();
private void addPomAndArtifacts(InstallDeployTaskSupport installOrDeployTask, MavenNormalizedPublication publication) {
Pom pom = new Pom();
pom.setProject(installOrDeployTask.getProject());
pom.setFile(publication.getPomFile());
installOrDeployTask.addPom(pom);
MavenArtifact mainArtifact = determineMainArtifact(publication.getName(), publication.getArtifacts());
installOrDeployTask.setFile(mainArtifact == null ? publication.getPomFile() : mainArtifact.getFile());