Есть ли правильный или простой способ создать один проект для различных версий JDK, проект будет использовать различные версии своей зависимости в зависимости от того, с какой версией JDK он построен. Теперь еще один проект, который использует это в качестве зависимости, обновляется до JDK 17, так что это означает, что мне нужно обновить проект зависимости до JDK 17 (я получал ошибки компиляции из -за Javax ), поэтому я обновлен до Jakarta и обновил зависимости до более поздних версий (некоторые теперь требуют JDK9 с минимальным). Это все в порядке, и я получил все, что работало с JDK 17, и удалил все следы Javax .
Моя дилемма, хотя этот проект все еще активно обновляется и используется в качестве зависимости других проектов, работающих на JDK8 (нет шансов на то, что они в ближайшее время в ближайшее время), но с тех пор, как я повысил его до JDK 17, теперь они получают Diffrors, потому что JDK Divers. Теперь мой единственный вариант - просто опубликовать 2 разных версии, одна JDK8 и одна JDK 17. < /p>
jdk8 будет иметь зависимости с более низкой версией, потому что это окончательная версия, совместимая для JDK8, например, < /p>
Код: Выделить всё
dependecies {
implementation: 'org.example:dependency-a:1.5.0'
}
< /code>
Но версия JDK 17 будет обновлена (предположим, что я не могу использовать нижнюю версию из -за проблем совместимости) < /p>
dependecies {
implementation: 'org.example:dependency-a:2.0.0'
}
Предполагая, что весь код остается одинаковым для обеих версий, и это просто зависимости, есть ли у меня способ просто иметь это на одном проекте, и каждый раз, когда я строю , я получаю версию JDK8 и JDK 17 моего проекта? Мой единственный другой вариант - просто поддерживать 2 отдельных филиала и обновлять, построить и публиковать оба изменения.
Подробнее здесь:
https://stackoverflow.com/questions/796 ... k-versions