У меня есть следующая зависимость в моем pom.xml, так что моя IDE (IntelliJ) имеет классы servlet-api, доступные во время компиляции, но не предоставленные в сборке.
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>3.0-alpha-1</version>
<scope>provided</scope>
</dependency>
Но предоставленная область добавляет классы в этой зависимости к пути к классам при выполнении в тестовой области, это проблема для Jetty, которую я запускаю программно. Поскольку он уже есть в его библиотеке, я получаю
java.lang.SecurityException: class "javax.servlet.FilterRegistration"'s signer information does not match signer information of other classes in the same package
. Если я удалю эту зависимость, сервер Jetty запустится правильно в тестовой области, но мне нужна эта зависимость для IntelliJ для компиляции моего кода. Каков наилучший способ решить эту проблему, можно ли исключить эту зависимость для области тестирования?