Apache Beam Java-тестирование ExpectedLogs Maven - PullRequest
0 голосов
/ 17 января 2019

Я использую Apache Beam с Maven, и в pom.xml зависимость составляет

<dependency>
   <groupId>org.apache.beam</groupId>
   <artifactId>beam-sdks-java-core</artifactId>
   <version>2.8.0</version>
</dependency>

Я могу использовать

import org.apache.beam.sdk.testing.PAssert;

но я не могу использовать

import org.apache.beam.sdk.testing.ExpectedLogs;

как здесь https://github.com/apache/beam/blob/master/runners/google-cloud-dataflow-java/src/test/java/org/apache/beam/runners/dataflow/DataflowRunnerTest.java

Любая помощь будет оценена!

1 Ответ

0 голосов
/ 17 января 2019

Это потому, что org.apache.beam.sdk.testing.PAssert в beam-sdks-java-core, а org.apache.beam.sdk.testing.ExpectedLogs в beam-sdks-java-core-test.

Я не думаю, что org.apache.beam.sdk.testing.ExpectedLogs опубликовано в артефактах Beam maven. Вы можете скомпилировать модуль локально из https://github.com/apache/beam и добавить его в свой проект maven.

Чтобы скомпилировать beam-sdks-java-core-test локально, вы сначала можете cd в родительский каталог Beam. Затем выполните команду ./gradlew :beam-sdks-java-core:shadowTestJar. После этого вы сможете найти банку с именем beam-sdks-java-core-2.10.0-SNAPSHOT-tests.jar в sdks/java/core/build/libs.

...