Maven + не может скомпилировать тесты при наследовании от другого pom - PullRequest
0 голосов
/ 28 апреля 2011

Я пытаюсь запустить простой проект maven, состоящий из родительского pom и (одного или нескольких) дочерних проектов.Работа каждого дочернего элемента в отдельности работает отлично, но когда я добавляю данные <parent>, дочерние проекты не разрешают зависимости.

Когда я запускаю $mvn test

[INFO] -------------------------------------------------------------
[ERROR] COMPILATION ERROR :
[INFO] -------------------------------------------------------------
    [...]symbol: class TestCase
    [...]services\TikalWebServiceTest.java:[3,22] package junit.framework does not exist
    [...]services\TikalWebServiceTest.java:[4,22] package junit.framework does not exist

В дочернем проекте,pom.xml Я объявил зависимость junit

    <parent>
    <artifactId>myapp</artifactId>
    <groupId>com.some.app</groupId>
    <version>1.0.0</version>
    <relativePath>../pom.xml</relativePath>
</parent>

  [................]
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
  </dependencies>

В свой родительский проект я также включил эту зависимость, а также некоторую информацию о репо

<repositories>
    <repository>
        <id>maven2-repository.dev.java.net</id>
        <name>Java.net Repository for Maven</name>
        <url>http://download.java.net/maven/2/</url>
        <layout>default</layout>
        <releases>
            <enabled>true</enabled>
        </releases>
        <snapshots>
            <enabled>false</enabled>
        </snapshots>
    </repository>

     <repository>
        <snapshots>
            <enabled>false</enabled>
        </snapshots>
        <releases>
            <enabled>true</enabled>
        </releases>
        <id>central</id>
        <name>Maven Repository Switchboard</name>
        <url>http://repo1.maven.org/maven2</url>
    </repository>
</repositories>
<dependencyManagement>
    <dependencies>
          <dependency>
          <groupId>junit</groupId>
          <artifactId>junit</artifactId>
          <version>3.8.1</version>
          <scope>test</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

Зависимости также есть в effective-pom

<dependencyManagement>
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
  </dependencies>
</dependencyManagement>
<dependencies>
  <dependency>
    <groupId>junit</groupId>
    <artifactId>junit</artifactId>
    <version>3.8.1</version>
    <scope>test</scope>
  </dependency>
...