Использование профилей Maven и добавление некоторых зависимостей только в некоторый профиль или установка их с областью действия: предоставляется:
https://www.baeldung.com/maven-profiles
Пример:
<profiles>
<profile>
<id>dev</id>
<dependencies>
<dependency>
<groupId>org.testcontainers</groupId>
<artifactId>testcontainers</artifactId>
<version>${testcontainers.version}</version>
</dependency>
<dependency>
<groupId>org.testcontainers</groupId>
<artifactId>postgresql</artifactId>
<version>${testcontainers.version}</version>
</dependency>
</dependencies>
</profile>
<profile>
<id>prod</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<dependencies>
<!-- my own library in my private repository which acts like a mock of testcontainers project. Don't ask :-) -->
<dependency>
<groupId>cz.jiripinkas</groupId>
<artifactId>fake-testcontainers</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
</dependencies>
</profile>
</profiles>
Изатем вы строите свой проект, используя:
mvn clean install -P dev
Это поместит внутрь библиотеки WAR testcontainers
или:
mvn clean install -P prod
Это поместит внутрь библиотеки WAR fake-testcontainer