Для выпуска Jaybird (драйвера JDBC Firebird) мы также хотим выпустить в репозиторий Maven. Сейчас я рассматриваю, как назвать / создать версию для артефактов, поскольку для каждой поддерживаемой версии Java есть разные версии (для предстоящего Jaybird 2.2 это будет версия для Java 5 / JDBC 3, Java 6 / JDBC 4.0 и Java 7 / JDBC 4.1).
Я нашел три разных способа именования конкретных версий JVM:
- версия JVM в артефакте (например,
<artifactId>jaybird-jdk15</<artifactId>
)
- версия JVM в версии (например,
<version>2.2.0-jdk15</version>
)
- Использование классификатора (например,
<classifier>jdk15</classifier>
)
Поскольку сборки имеют различный исходный код, можно рассматривать варианты JVM как фактически разные артефакты (вариант 1). Я видел, что PostgreSQL JDBC использует вариант 2. Вариант 3 имеет (AFAIK) обратную сторону, что вы не можете включать специфичные для версии источники и javadoc.
Я хотел бы знать, пропустил ли я совершенно другую опцию или maven-функцию для конкретных артефактов JVM, или есть ли предпочтительный метод для управления версиями этих типов артефактов.
ПРИМЕЧАНИЕ. Сам процесс сборки Jaybird не использует Maven