Не удалось выполнить цель org.apache.maven.plugins: maven-surefire-plugin: 2.12: test (default-test) для проекта.
Я пытался через пару дней решить следующую ошибку, но я не могу ее решить:(
Мой файл pom.xml модуля:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<artifactId>junitcategorizer</artifactId>
<groupId>com.topdesk.test.junitcategorizer</groupId>
<version>0.0.1-SNAPSHOT</version>
<relativePath>..</relativePath>
</parent>
<artifactId>junitcategorizer.instrument</artifactId>
<name>JUnitCategorizer InstrumentationAgent</name>
<description>The agent used to instrument the called Java classes</description>
<dependencies>
<dependency>
<groupId>org.ow2.asm</groupId>
<artifactId>asm-commons</artifactId>
<version>4.0</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.10</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
</manifest>
<manifestEntries>
<Premain-Class>com.topdesk.junitcategorizer.instrument.InstrumentationAgent</Premain-Class>
<Agent-Class>com.topdesk.junitcategorizer.instrument.InstrumentationAgent</Agent-Class>
<Can-Redefine-Classes>true</Can-Redefine-Classes>
<Can-Retransform-Classes>true</Can-Retransform-Classes>
<Boot-Class-Path>${project.artifactId}-${project.version}.jar</Boot-Class-Path>
<Can-Set-Native-Method-Prefix>true</Can-Set-Native-Method-Prefix>
</manifestEntries>
</archive>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>1.5</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<artifactSet>
<includes>
<include>org.ow2.asm:*</include>
</includes>
</artifactSet>
<relocations>
<relocation>
<pattern>org.objectweb.asm</pattern>
<shadedPattern>org.shaded.asm</shadedPattern>
</relocation>
</relocations>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
Я получаю следующую ошибку:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.
12:test (default-test) on project junitcategorizer.instrument: There are test failures.
[ERROR]
[ERROR] Please refer to D:\Masters\thesis related papers and tools\junitcategorizer\junitcategorizer.instrument\target\surefire-reports for the individual test results.
[ERROR] -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.12:test (default-test) on project junitcategorizer.instrument: There are test failures.
Please refer to D:\Masters\thesis related papers and tools\junitcategorizer\junitcategorizer.instrument\target\surefire-reports for the individual test results.
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:212)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:116)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:80)
at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:120)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:347)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:154)
at org.apache.maven.cli.MavenCli.execute(MavenCli.java:582)
at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:214)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:158)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)
at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)
Caused by: org.apache.maven.plugin.MojoFailureException: There are test failures.
Please refer to D:\Masters\thesis related papers and tools\junitcategorizer\junitcategorizer.instrument\target\surefire-reports for the individual test results.
at org.apache.maven.plugin.surefire.SurefireHelper.reportExecution(SurefireHelper.java:83)
at org.apache.maven.plugin.surefire.SurefirePlugin.writeSummary(SurefirePlugin.java:673)
at org.apache.maven.plugin.surefire.SurefirePlugin.handleSummary(SurefirePlugin.java:647)
at org.apache.maven.plugin.surefire.AbstractSurefireMojo.executeAfterPreconditionsChecked(AbstractSurefireMojo.java:137)
at org.apache.maven.plugin.surefire.AbstractSurefireMojo.execute(AbstractSurefireMojo.java:98)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:132)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208)
... 19 more
[ERROR]
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
Я попробовал следующее, но не помог:
- зависимость mvn:: tree
- mvn clean install -U или щелкните правой кнопкой мыши на "проекте". Перейдите в "Maven" → "Обновить"
Пожалуйста, помогите мне!
Ответы
Ответ 1
Это решило мою проблему - пожалуйста, примите это. Это было 2.10 в моем POM, только что обновил до 2.19.1 и обновил POM> Он сгенерировал отчет html огурца в целевой папке.
Спасибо.
Добавьте к вашему пом:
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.19.1</version>
</plugin>
</plugins>
В вашем коде ошибки он не нашел surefire plugin
поэтому добавьте его
Ответ 2
Вот что решает проблему:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.19.1</version>
<configuration>
<testFailureIgnore>true</testFailureIgnore>
</configuration>
</plugin>
from Не удалось выполнить цель org.apache.maven.plugins: maven-surefire-plugin: 2.10: test
Ответ 3
Это своего рода ошибка теста.@SpringBootApplication содержит эти конфигурации.
1) @Configuration
2) @ComponentScan
3) @EnableAutoConfiguration
@EnableAutoConfiguration является причиной этой ошибки. Это попытается автоматически настроить приложение в соответствии с зависимостями в вашем pom.xml
Например, когда у вас есть зависимость spring-data-jpa в pom, она попытается добавить конфигурацию в приложение, посмотрев файл application.properties для источника данных. Поэтому вам нужно добавить источник данных, чтобы решить эту проблему.
Для MySQL:
spring.jpa.hibernate.ddl-auto=create
spring.datasource.url=jdbc:mysql://localhost/lahiru
spring.datasource.username=root
spring.datasource.password=
или
Вы можете скрыть это, пропустив тестирование.
mvn install -DskipTests
Подробнее Подробнее.
Ответ 4
У меня это работало с версией 3.0.0-M1.
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>3.0.0-M1</version>
</plugin>
Возможно, вам придется запустить его с помощью sudo.
Ответ 5
Попробуйте это работает!
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>3.0.0-M3</version>
<configuration>
<testFailureIgnore>true</testFailureIgnore>
<shutdown>kill</shutdown> <!-- Use it if required-->
</configuration>
</plugin>
Ответ 6
Я получаю точно такую же стеклу, когда тесты терпят неудачу.
В верхней части вы должны видеть сообщения, идентифицирующие неудачные тестовые классы.
Или перейдите к
D:\Masters\thesis related papers and tools\junitcategorizer\junitcategorizer.instrument\target\surefire-reports
и посмотрите отчеты об ошибках.
Исправьте проблемы, и ваша сборка в порядке.
Хорошая новость. Кажется, ваши поры в порядке, Maven может скомпилировать и выполнить тесты.
Ответ 7
Несколько раз сталкивался с одной и той же проблемой, и у меня есть 2 решения:
Решение 1. Добавьте ссылку на верный плагин в pom.xml. Следите за тем, чтобы у вас были все узлы! В моих IDE версия для автоматического импорта отсутствовала !!!
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>3.0.0-M3</version>
</plugin>
</plugins>
Решение 2. Моя IDE добавила неправильный импорт в начало файла.
IDE добавлена
import org.junit.Test;
Я должен был заменить его
import org.junit.jupiter.api.Test;
Ответ 8
Проверьте тестовые файлы. Вы должны очистить все файлы тестовых файлов в своем проекте и попробовать "Очистить" и "Создать".
Ответ 9
Эта ошибка возникает по разным причинам, поэтому у каждого свое решение. Однако ваше собственное веб-приложение должно содержать ответ.
Вы можете посмотреть это в
/module_with_failure/target/surefire-reports/*.txt
Ответ 10
Попробуйте следующее:
mvn dependency:: tree в командной строке терминала или командной строки
Удачи, -)
Ответ 11
Я столкнулся с такой же проблемой: ваши номера версий в зависимости от Selenium, TestNG, Junit должны совпадать с теми, которые вы использовали в своем проекте. Например, в вашем проекте вы используете Selenium версии 3.8. Этот номер версии должен быть указан в зависимости.
<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
<version>7.0.0-beta1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>3.8.1</version>
</dependency>
<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
<version>6.8</version>
<scope>test</scope>
</dependency>
</dependencies>
Ответ 12
Проверьте наличие конфликтующих зависимостей и удалите их. Это сработало для меня, когда я удалил зависимость JPA. Поскольку Spring boot поставляется со встроенным JPA, я удалил внешнюю зависимость, которая у меня была. Надеюсь, это сработает! :)
Ответ 13
Я столкнулся с той же проблемой, и как я решил ее, см. Ниже шаги или изображение:
- Кликнул по пункту меню Windows затмения
- Нажал на настройки
- выберите Установленные JRE
- Добавьте установленный путь JDK (JRE home: C:\Program Files\Java\jdk1.8.0_201\jre ')
- Добавить имя JRE: jdk1.8.0_201
- Нажмите на Готово
- Применить изменения и закрыть
введите описание изображения здесь
Ответ 14
Изменить номер версии на 2.19.1 у меня работает :)
'<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.19.1</version>
<configuration>
<systemPropertyVariables>
<xmlOutputDir>${project.build.directory}/surefire</xmlOutputDir>
</systemPropertyVariables>
</configuration>
</plugin>'
Ответ 15
Уже 3 года, но то же самое случилось со мной, и я хотел внести свой вклад в мое дело. Используя решение @nikk, я получил лучшие результаты, но все еще появлялись другие ошибки, хотя да, мне разрешили упаковывать.
Однако моя задача заключалась в том, чтобы внедрить код коллеги на сервере, а в его тестовой среде этого не произошло с ним, поэтому я решил исследовать немного больше, поскольку код функционировал и не соответствовал тому, что я касался чего-либо..
В конце концов оказалось, что его приложение вставило таблицы mysql в несуществующую базу данных. Решение было так же просто, как создание такой базы данных, и ошибка исчезла.
Ответ 16
Эта проблема может быть связана с уже занятым портом. Surefire работает на 5005 порту. Поэтому вам нужно убедиться, что этот порт свободен. Если нет, измените или убейте процесс. Это происходит в Intellij некоторое время.
Ответ 17
Если вы используете убанту, попробуйте запустить MVN с помощью sudo.
Я получил ту же ошибку для
mvn -Dtest=PerfLatency#latencyTest test -X
Но
sudo mvn -Dtest=PerfLatency#latencyTest test -X
Решил мою проблему
Ответ 18
Вот самый простой способ устранить эту ошибку:
1) Перейдите к пути к файлу pom.xml
2) И отредактируйте файл pom.xml следующим образом:
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.12</version>
</plugin>
</plugins>
3) Сохраните файл
Это.
Ответ 19
Убедитесь, что имя класса, созданного в пакете, выглядит примерно так:
Maven выбирает только файлы java, заканчивающиеся нотацией Test.
Я получал ту же ошибку и разрешал имена всех моих классов, добавляя "Test" в конце, чтобы все заработало.
Ответ 20
Это сработало для меня,
Щелкните правой кнопкой мыши по проекту → "Запустить как тест Maven". Это автоматически загрузит отсутствующие плагины, а затем щелкните правой кнопкой мыши по проекту → "Обновить проект Maven", он удалит ошибку.
Ответ 21
HI Все вы можете попробовать добавить ниже в свой POM, а затем использовать
mvn clean compile
, а затем mvn install
.
<!-- https://mvnrepository.com/artifact/junit/junit -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
Ответ 22
Просто добавьте строку ниже в файле pom.xml в верхней части <modelversion>
:
<repositories>
<repository>
<id>central</id>
<name>Central Repository</name>
<url>http://repo.maven.apache.org/maven2</url>
<layout>default</layout>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
</repositories>
Ответ 23
верная версия плагинов может быть одной из причин. У меня сработала следующая зависимость. Пожалуйста, попробуй:
<!-- https://mvnrepository.com/artifact/org.apache.maven.plugins/maven-surefire-plugin -->
<dependency>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.19.1</version>
</dependency>
Ответ 24
Проблема не в ваших зависимостях.... вы должны открыть подробную ошибку на этом пути
Пожалуйста, обратитесь к D:\Masters\thesis документы и инструменты \junitcategorizer\junitcategorizer.instrument\target\surefire-reports для отдельных результатов теста.
там есть ошибка детализации, может быть, ваш класс обслуживания или класс serviceImpl или что-то отсутствует, например @anotation, или еще... у меня такая же ошибка, как и у вас,... вам следует попробовать
Ответ 25
попробуйте в cmd: mvn clean install -Dskiptests=true
который пропустит все unit test. Возможно, это сработает для вас.
Ответ 26
Если есть ошибки тестирования, просто пропустите их с помощью
mvn install -DskipTests
но я настоятельно рекомендую сначала исправить ваш тест.