5

Junit テストで Maven を使用しています。標準の Maven プロジェクト構造を使用しており、Eclipse で「run as Junit テスト」を実行でき、それらはすべて成功しますが、Maven テスト/インストールを実行したい場合、テストが実行されず、「初期化できませんでした」というエラーが発生します。 class main.sushi.persistence.Persistor".

これが私たちのプロジェクトツリーです:

├── pom.xml
├── src
│   ├── main
│   │   ├── java
│   │   │   └── main
│   │   │       └── sushi
│   │   │           └── persistence
│   │   │               ├── DatabaseEnvironments.java
│   │   │               ├── META-INF
│   │   │               │   ├── persistence.xml
│   │   │               │   └── persistence_template.xml
│   │   │               └── Persistor.java
│   │   └── resources
│   └── test
│       ├── java
│       │   ├── META-INF
│       │   │   ├── persistence.xml
│       │   │   └── persistence_template.xml
│       │   └── test
│       │       └── sushi
│       │           └── persistence
│       │               ├── ProcessPersistorTest.java
│       │               └── TestPersistor.java
│       └── resources
└── target
    ├── classes
    │   ├── META-INF
    │   │   ├── MANIFEST.MF
    │   │   └── maven
    │   │       └── sushi
    │   │           └── SushiPersistence
    │   │               ├── pom.properties
    │   │               └── pom.xml
    │   └── main
    │       └── sushi
    │           └── persistence
    │               ├── DatabaseEnvironments.class
    │               ├── META-INF
    │               │   ├── persistence.xml
    │               │   └── persistence_template.xml
    │               └── Persistor.class
    ├── generated-sources
    │   └── annotations
    ├── surefire
    ├── surefire-reports
    │   ├── TEST-test.sushi.persistence.ProcessPersistorTest.xml
    │   ├── TEST-test.sushi.persistence.TestPersistor.xml
    │   ├── test.sushi.persistence.ProcessPersistorTest.txt
    │   └── test.sushi.persistence.TestPersistor.txt
    └── test-classes
        ├── META-INF
        │   ├── persistence.xml
        │   └── persistence_template.xml
        └── test
            └── sushi
                └── persistence
                    ├── ProcessPersistorTest.class
                    └── TestPersistor.class

ポンポン:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>sushi</groupId>
    <artifactId>SushiPersistence</artifactId>
    <version>SNAPSHOT</version>
    <repositories>
        <repository>
            <id>EclipseLink</id>
            <url>http://download.eclipse.org/rt/eclipselink/maven.repo</url>
        </repository>
    </repositories>
    <build>

        <plugins>
            <plugin>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>2.3.2</version>
                <configuration>
                    <source>1.7</source>
                    <target>1.7</target>
                </configuration>
            </plugin>
        </plugins>
    </build>
    <dependencies>
        <dependency>
            <groupId>de.hpi-web.sushicommon</groupId>
            <artifactId>SushiCommon</artifactId>
            <version>SNAPSHOT</version>
        </dependency>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.11</version>
        </dependency>
        <dependency>
            <groupId>org.eclipse.persistence</groupId>
            <artifactId>eclipselink</artifactId>
            <version>2.3.0</version>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>org.eclipse.persistence</groupId>
            <artifactId>org.eclipse.persistence.jpa</artifactId>
            <version>2.0.0</version>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.22</version>
        </dependency>
    </dependencies>


</project>
4

3 に答える 3

1

src/main/sushi/persistence/META-INFのリソースはsrc/main/resourcesの下に配置する必要があり、テスト用の適切なフォルダーはsrc/main/javaまたはsrc/test/ではなくsrc/test/resourcesの下に配置する必要があります。ジャバ

于 2012-12-20T10:59:06.637 に答える
0

すべての依存関係からスコープタグを削除します..現在、コンパイルを設定しているため、要求したことを実行するように設定されています..テストフェーズ中に依存関係が含まれていないことを意味します。

于 2012-12-20T19:48:03.310 に答える