2011-07-29 17 views
0

私はプロジェクトYに依存するプロジェクトXを持っています。プロジェクトXでテストを実行すると、クラスパスにあるものの、プロジェクトYでテストファイルを見つけることができません。メイクテストで問題が発生する

+0

「ファイル」とは、プロジェクトファイルYまたはプロジェクトYのテストファイルのことですか? – Raghuram

答えて

3

Mavenの通常の規約は、プロジェクトに対してローカルテストを行うことです。つまり、現在のプロジェクトの外にあるクラスを使用することはできません。これは、テストクラスが生産コード(src/main/java)と矛盾してjarにパッケージ化されない点からも来ています。あなたがMVNをインストール(またはMVN展開でもよい)しなければならない

<build> 
    <plugins> 
     <plugin> 
     <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-jar-plugin</artifactId> 
     <executions> 
      <execution> 
      <goals> 
       <goal>test-jar</goal> 
      </goals> 
      </execution> 
     </executions> 
     </plugin> 
    </plugins> 
</build> 

、プロジェクトにあなたがする必要はありY:しかし、あなたは、次の(プロジェクトY)のように再利用したいクラスを定義することによって、問題を解決することができます上記のように次のように定義してください:

<dependency> 
    <groupId>${project.groupId}</groupId> 
    <artifactId>test</artifactId> 
    <version>${project.version}</version> 
    <type>test-jar</type> 
    <scope>test</scope> 
</dependency> 
関連する問題