У меня есть артефакты, которые созданы и выпущены с использованием Maven. Исходный pom.xml артефакта содержит обычную информацию о проекте (artifactId, имя и т. д.) и зависимости. Это нормально. Но pom.xml также включает личную информацию, такую как URL-адреса SCM, имена разработчиков или родительский артефакт.
Есть ли способ сказать Maven сгенерировать очищенный pom.xml, чтобы артефакт можно было опубликовать, не уничтожая соответствующую техническую информацию, такую как зависимости?
Ни URL-адреса SCM, ни список разработчиков, ни существование parent-pom (который используется только для определений DepMgmt и других метаматериалов) не имеют значения для пользователей артефакта, поэтому я предполагаю, что меня можно удалить из выпущен файл pom.xml
Эта информация содержится в файле pom.xml как в менеджере репозитория, таком как Archiva, так и в файле jar артефакта. Я предполагаю, что Maven просто копирует все это.
Обобщить:
У меня есть:
<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>
Я хочу:
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>org.example</groupId>
<artifactId>my-artifact</artifactId>
<dependencies>
<dependency>
...
</dependency>
</dependencies>