Разделите схемы Apache Avro на несколько файлов, имея несколько целей в модуле avro-maven-plugin - PullRequest
0 голосов
/ 28 марта 2019

Я хочу разделить мои файлы схемы avro. Для генерации исходного кода я использую avro-maven-plugin. Я подписался на этот пост:

Можно ли разбить схему Apache Avro на несколько файлов?

Это работает нормально, но в моем случае я хочу иметь другие цели, и затем я получаю сообщение об ошибке [ERROR] Failed to execute goal org.apache.avro:avro-maven-plugin:1.8.2:protocol (schemas) on project AvroTestProject: Execution schemas of goal org.apache.avro:avro-maven-plugin:1.8.2:protocol failed: No protocol name specified: ..., поскольку мой импортированный файл является только схемой, а не протоколом.

Вот фрагмент моего pom.xml:

        <plugin>
            <groupId>org.apache.avro</groupId>
            <artifactId>avro-maven-plugin</artifactId>
            <version>${avro.version}</version>
            <executions>
                <execution>
                    <id>schemas</id>
                    <phase>generate-sources</phase>
                    <goals>
                        <goal>schema</goal>
                        <goal>protocol</goal>
                        <goal>idl-protocol</goal>
                    </goals>
                    <configuration>
                        <sourceDirectory>${project.basedir}/src/avro/</sourceDirectory>
                        <outputDirectory>${project.basedir}/src/</outputDirectory>
                        <imports>
                            <import>${project.basedir}/src/avro/TestSchema.avsc</import>
                        </imports>
                    </configuration>
                </execution>
            </executions>
        </plugin>

Есть ли способ объявить импорт только для определенной цели? Или есть другие возможности решить эту проблему?

...