Однако вы не поделились pom.xml. но это происходит, когда мы смешиваем прямые и переходные зависимости. Поэтому мы не будем смешивать прямые и переходные зависимости, особенно их версии! Это может привести к непредсказуемому результату. Ниже приведено несколько сообщений об ошибках людей из-за неправильного использования зависимостей.
- Не удается разрешить импорт cucumber.api.junit
- java.lang.NoClassDefFoundError: gherkin / IGherkinDialectProvider
- import cucumber.api.DataTable; не может быть решена
Решение: Вы можете добавить приведенный ниже набор минимальных зависимостей от огурца. Если вы используете зависимости info.cukes, пожалуйста, начните использовать зависимости io.cucumber как
info.cuke - это довольно старая зависимость, имеющая последнюю версию 1.2.5, и поддержка не предоставляется после сентября 2016 года и
io.cucumber является последней версией, имеющей версию от 2 до 4.3, где мы можем видеть все последние обновления от команды Cucumber
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>cucumber-junit</artifactId>
<version>4.3.0</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>cucumber-picocontainer</artifactId>
<version>4.3.0</version>
<scope>test</scope>
</dependency>