Вы также можете прочитать версию вашей библиотеки из свойства, например
<dependency>
<groupId>javax.faces</groupId>
<artifactId>jsf-api</artifactId>
<version>${jsp.api.version}</version>
</dependency>
Вы можете установить это свойство несколькими способами, например, загрузка файла свойств, специфичного для сборки.
Вы даже можете указать его в качестве параметра при запуске сборки. В командной строке SVN это что-то вроде
mvn -Djsp.api.version=1.8 install
Не знаю, как указать такое свойство при запуске Maven из IntelliJ, но я уверен, что это возможно ....
Этот подход даст вам полную гибкость, позволяющую свободно определять версию lib для каждой сборки. Но если у вас есть только ограниченное количество версий, из которых вы хотите выбрать, вероятно, лучше использовать профили. Просто определите профиль для каждого номера версии и всегда сообщайте Maven, какой профиль использовать при запуске сборки.