Это не совсем вопрос кодирования, но я застрял на нем. Я запускаю новый проект Java в Intelliji и добавляю тесты с JUnit5. В этом тесте я использую @Role
аннотацию для библиотеки FakeSftpServerRule github .
Я добавил все зависимости Юпитера, о которых я только мог подумать, в файле pom:
<dependency>
<groupId>org.junit.platform</groupId>
<artifactId>junit-platform-engine</artifactId>
<version>1.6.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.junit.platform</groupId>
<artifactId>junit-platform-launcher</artifactId>
<version>1.6.0</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-engine</artifactId>
<version>5.5.2</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.junit.vintage</groupId>
<artifactId>junit-vintage-engine</artifactId>
<version>5.6.0</version>
<scope>test</scope>
</dependency>
Это способ инициализации поддельного ftp:
@Rule
public final FakeSftpServerRule fakeSftpServer = new FakeSftpServerRule()
.addUser(username, password)
.setPort(port);
И я использую обычные другие атрибуты, такие как @BeforeAll
и @Test
...
Запуск тестов выбросить эту ошибку:
Произошла внутренняя ошибка. org.junit.platform.commons.JUnitException: TestEngine с идентификатором junit-vintage не удалось обнаружить тесты в org.junit.platform.launcher.core.DefaultLauncher.discoverEngine Root (DefaultLauncher. java: 189) в org .junit.platform.launcher.core.DefaultLauncher.discover Root (DefaultLauncher. java: 168) в org.junit.platform.launcher.core.DefaultLauncher.execute (DefaultLauncher. java: 132) по адресу com. intellij.junit5.JUnit5IdeaTestRunner.startRunnerWithArgs (JUnit5IdeaTestRunner. java: 69) в com.intellij.rt.junit.IdeaTestRunner $ Repeater.startRunnerWithArt (33.jtj. prepareStreamsAndStart (JUnitStarter. java: 230) в com.intellij.rt.junit.JUnitStarter.main (JUnitStarter. java: 58) Причина: org.junit.platform.commons.JUnitException: неподдерживаемая версия junit: : 4.11-бета-1. Пожалуйста, обновите до версии 4.12 или позже. в org.junit.vintage.engine.JUnit4VersionCheck.checkSupported (JUnit4VersionCheck. java: 39) в org.junit.vintage.engine.JUnit4VersionCheck.checkSupported (JUnit4Version.jpg: 32.jpg). .VintageTestEngine.discover (VintageTestEngine. java: 62) в org.junit.platform.launcher.core.DefaultLauncher.discoverEngine Root (DefaultLauncher. java: 181)
сейчас, при переходе к источнику я обнаружил, что аннотации @BeforeAll
и @Test
указывают на junit-jupiter 5.5.2
, а @Role
указывают на junit 4.11 (beta-1)
.
Как мне избавиться от junit 4.11 и обновить его до последней версии? версия