NetBeans 10 JUnit Jar не найден
У меня установлена новая версия NetBeans 10. При попытке запустить только что созданные мной исходные модульные тесты я получаю следующую ошибку:
<classpath>
или же<modulepath>
за<junit>
должен включать junit.jar, если не в собственном пути к Ant
Я мог бы, вероятно, взломать скрипт сборки, чтобы включить junit.jar
, но я хочу знать: как правильно это исправить?
Разве в NetBeans не должна быть доступна версия JUnit? Должен ли я настроить свой проект по-другому? Как мне добавить путь к библиотеке?
Как я могу найти путь к классам для Ant (и какую версию / двоичную версию NetBeans использует)?
Проект Test Libraries
показывает, что JUnit 5.3.1 присутствует, у меня там есть три файла Jar: junit-jipiter-api, junit-jupiter-params, junit-jupiter-engine. Но, похоже, на самом деле не найдено.
Проект представляет собой стандартную библиотеку Java (без основного класса). Я не добавил никаких "дополнений" или беспорядка с настройками проекта по умолчанию, которые использует NetBeans. Просто использовал мастер настройки основных вещей.
Число рейнольдса в ответ из списка рассылки NetBeans Джерджан Виленга, он указал мне на эту ветку и ответил:
Ага...
Мы никогда не удосужились реализовать поддержку JUnit 5 для проектов на основе Ant в NB 10.
Джон Макдоннелл
Так что я думаю, что это просто не сработает. Я попробую предложенный возврат к JUnit 4 ниже.
5 ответов
Я также использую NetBeans 10, в xubuntu, если это поможет. Я понятия не имею, что происходит, поэтому мне пришлось вернуться к junit4. РЕДАКТИРОВАТЬ: Чтобы быть совершенно ясным, ant нуждается в junit.jar, который нигде не найден в стандартной установке netbeans 10. Пока кто-нибудь не предложит лучшее решение, вернитесь к junit4:
1) в ваших тестовых библиотеках щелкните правой кнопкой мыши и импортируйте файлы junit 4.1.2.
2) удалить джунт 5.3 из них.
3) удалите все импортированные файлы из вашего тестового файла и используйте junit4. т.е. ваш импорт будет выглядеть так:
import static junit.framework.Assert.assertEquals;
import org.junit.Test;
import org.junit.*;
/*import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.AfterAll;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.Test;*/
4) утилизируйте beforeAll и другие тестовые теги. Оставьте только @Test один.
5) сохранить все, закрыть и заново открыть проект. Он будет жаловаться, что библиотеки hamcrest для junit4 не импортируются. Позвольте netbeans исправить это за вас.
После этого я смог протестировать успешные и провальные тесты. Я предполагаю, что когда вы генерируете тесты junit с помощью генератора шаблонов, он генерирует тесты junit 5, так что это немного раздражает. Но у тебя будут тесты!
Я нашел лучшее решение принятого ответа - выбрать JUnit 4 из тестов Create / Update. Тогда вам не придется каждый раз заново настраивать свои тесты.
Из Netbeans: https://netbeans.apache.org//kb/docs/java/junit-intro.html#_writing_junit_3_unit_tests
У меня была такая же ошибка, но это была не проблема конфигурации, а всего лишь опечатка.
Основной метод тестируемого мной класса был написан так:
public static void main(String agrs) {
///
}
Единственное, что мне нужно было сделать, это написать это правильно, вот так:
public static void main(String[] args) {
///
}
Как только я его изменил, проблема исчезла. Полагаю, это не глобальное решение, но некоторым может помочь.
verdade, o netbeans até este momento na versão 12.5 ainda da erro usando junit 5.3, simplesmente remova a lib e instale a versão 4.1 e bons testes
Я столкнулся с той же проблемой. Я удалил существующие файлы Junit 5 и вместо этого добавил файлы сюда.
https://github.com/junit-team/junit4/wiki/Загрузить и установить