Я думал о зависимостях в Maven. Maven загружает их, но неизвестно, для какой целевой версии JVM они скомпилированы и с каким компилятором. Это вызывает два вопроса:
- Приведет ли перекомпиляция зависимостей к более быстрым библиотекам зависимостей? Я попытался найти это, но не нашел достаточного ответа. Я обнаружил, что для 1.6 существует проверка разделения байт-кода, которая выполняется при компиляции с цель 1.6.
Также есть вопрос Относятся ли улучшения производительности Java 6 к JDK, JVM или обоим?, где упоминается, что более новые версии javac могут генерировать более оптимизированный код. - Можно ли с помощью Maven выполнить перекомпиляцию зависимых библиотек? Можно ли настроить Maven для загрузки источников, поместить туда информацию о цели 1.6 и выполнить чистую установку mvn? < br> Мне известно о подключаемом модуле Maven Dependency и dependency: sources цель. Его можно использовать для загрузки исходного кода.
Также существует подключаемый модуль Maven Replacer позволяющий заменять текст в файлах. Как указано в его проблеме 58, возникла реализовал поддержку XPath для него.
Можно ли будет реализовать его с этими плагинами для зависимости, а также для его зависимостей, чтобы выполнять это? Я не уверен, как это сделать с зависимостями - возможно, с плагином Maven Replacer, вводящим конфигурацию в распакованные зависимости pom.xml?
Или есть более простой способ настроить целевую версию Java с профилем сборки в пользователя settings.xml, который будет иметь приоритет над настройками проекта и, следовательно, избежать изменения pom.xml?