Проект Maven не может найти джунит - PullRequest
2 голосов
/ 28 февраля 2012

Я пишу простой проект, используя maven, scala и junit.

Одна проблема, которую я обнаружил, заключается в том, что мои тесты не могут найти org.junit.framework.Test. Тестовый файл:

import org.junit.framework.Test

class AppTest {
  @Test
  def testOK() = assertTrue(true)

  @Test
  def testKO() = assertTrue(false)
}

возвращает ошибку:

[WARNING].....    error: object junit is not a member of package org
[WARNING] import org.junit.framework.Test
[WARNING]            ^

Мне добавили junit в качестве зависимости, и он явно находится внутри моего хранилища.

        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.8.1</version>
            <scope>test</scope>
        </dependency>

Может кто-нибудь сказать мне, что вызывает это?

Большое спасибо

Ответы [ 2 ]

2 голосов
/ 29 февраля 2012

Как говорит @nico_ekito, ваш импорт некорректен и должен быть org.junit.Test.

Но это не объясняет вашу проблему:

[WARNING].....    error: object junit is not a member of package org
[WARNING] import org.junit.framework.Test
[WARNING]            ^

Так что он не может найтиorg.junit.Это означает, что org.junit не находится в classpath, когда вы компилируете тесты.Так что либо ваше дерево зависимостей испорчено, либо фактический jar.

Попробуйте

mvn dependency:list

Это должно привести к чему-то вроде:

[INFO] The following files have been resolved:
[INFO]    junit:junit:jar:4.8.1:test

Убедитесь, что выУ меня нет других библиотек Junit, которые будут решены.Если все выглядит хорошо, проверьте содержимое вашего джунит банку.Он должен содержать класс org.junit.Test.Если этого не произойдет, у вас поврежденный репо, или вы ищете не в нужном месте.Самый простой способ узнать это - использовать:

mvn dependency:copy-dependencies

, который создает цель / зависимость с копией зависимостей.Вы можете посмотреть на банку там.

1 голос
/ 28 февраля 2012

Пакет для класса Test в JUnit 4.8.1 равен junit.framework.Test, а не org.junit.framework.Test.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...