I have artifacts that are built and released using Maven. The original armfact pom.xml file contains the usual project information (artifactId, name, etc.) and dependencies. It's great. But pom.xml also contains personal information such as SCM URLs, developer names, or the parent artifact.
Is there a way to tell Maven to create a cleaned pom.xml so that the artifact can be published publicly without destroying technically relevant information such as dependencies?
Neither the SCM URLs, nor the list of developers, nor the existence of a parent pump (which is used only for DepMgmt and other metafile definitions) are relevant to users of the artifact, so I believe that I could be removed from the released pom.xml
The pom.xml file, both in the repository manager and in Archiva and packaged in a jar artifact file, contains this information. I assume Maven is just copying all of this.
Summarizing:
I have:
<project> <modelVersion>4.0.0</modelVersion> <groupId>org.example</groupId> <artifactId>my-artifact</artifactId> <scm> <connection>scm:svn:http://buildmachine/org.example/my-artifact/trunk</connection> <developerConnection>scm:svn:http://buildmachine/org.example/my-artifact/trunk</developerConnection> <url>http://buildmachine/org.example/my-artifact/trunk</url> </scm> <dependencies> <dependency> ... </dependency> </dependencies>
I want to:
<project> <modelVersion>4.0.0</modelVersion> <groupId>org.example</groupId> <artifactId>my-artifact</artifactId> <dependencies> <dependency> ... </dependency> </dependencies>
source share