Добавьте весенние конфигурационные файлы в classpath, если исходите из зависимости от maven - PullRequest
2 голосов
/ 12 января 2012

У меня есть:

Project
     \-src/main/resources
     \-src/main/java
     \-src/test/resources
                        \-TestDataSourceContext.xml
     \-src/test/java

и

DatabaseUtils
     \-src/main/resources
     \-src/main/java
     \-src/test/resources
                        \-AbstractTestDataSourceContext.xml
     \-src/test/java

В моем Pom для Project у меня есть зависимость следующим образом: `

<dependencies>
    <dependency>
        <groupId>uk.co.domain.databaseutils</groupId>
        <artifactId>DatabaseUtils</artifactId>
        <version>${buildVersion}</version>
    </dependency> 
</dependencies>

Тогда в TestDataSourceContext.xml У меня есть:

<import resource="classpath:AbstractTestDataSourceContext.xml"/>

Конечно, я получаю filenotfoundexception при попытке выполнить импорт при запуске модульных тестов для Project, так как AbstractTestDataSourceContext.xml не включен в classpath.Есть ли простой способ получить этот файл на пути к классам?Есть ли вариант maven, плагин и т. Д.?Поэтому, когда я полагаюсь на DatabaseUtils, я могу взять все его ресурсы, получить DatabaseUtils, чтобы упаковать его ресурс и т.д. ... Я все еще относительно новичок в Maven, но мне кажется странным, что это было бы сложно сделать.

1 Ответ

1 голос
/ 12 января 2012

Что вы обычно делаете, вы включаете другую зависимость с тестом области:

<dependency>
    <groupId>uk.co.domain.databaseutils</groupId>
    <artifactId>DatabaseUtils</artifactId>
    <version>${buildVersion}</version>
    <scope>test</scope>
    <type>test-jar</type>
</dependency> 

Он говорит maven включить test-jar (должен называться DatabaseUtils- -tests.jar) в classpathвыполнение тестов (тестирование области).

Предполагается, что имеется надлежащий тестовый jar DatabaseUtils, который должен иметь место, если он установлен по умолчанию maven.

...