У нас есть устаревшая библиотека Java (называемая AcmeLib), которая используется для начальной загрузки приложений Java, обеспечения конфигурации, переноса определенных функций БД и тому подобного. Эта библиотека v в основном в режиме обслуживания и представляет собой стандартные jar-файлы Java 8, созданные с использованием maven.
Теперь мы хотим создать приложения Java 11 - и им нужно использовать AcmeLib. Моя первая мысль - просто продолжить сборку AcmeLib в Java 8 - и она будет отлично работать при импорте в приложения Java 11 (* где главное - обновить зависимости AcmeLib).
У меня есть еще одна идея создать версию AcmeLib для Java 8 и Java 11. Я могу сделать это с помощью профиля maven (поскольку они будут различаться только между библиотеками, это будет pom, например, конфиги плагинов и т. Д.), Например.
<profiles>
<profile>
<id>java-11</id>
<activation>
<jdk>11</jdk>
</activation>
<!-- add Java 11 specific configuration -->
</profile>
</profiles>
Итак, 2 профиля, значит 2 сборки - так что мои вопросы (о времени!) Мне интересно, возможно, это анти-паттерн? Кроме того, есть ли у людей какие-либо предложения относительно соглашений об именовании? Текущая версия lib произвольно установлена на 5.5, поэтому я мог бы создать 11 версию, например ..
<!-- Java 8 complied -->
<artifactId>AcmeLib</artifactId>
<version>5.6</version>
<!-- Java 11 complied -->
<artifactId>AcmeLib</artifactId>
<version>11</version>