Я пытаюсь использовать vertx-service-proxy, как описано в руководстве для разработчиков Java. В нем говорится, что мне нужно добавить в свой пом:

<annotationProcessors>
  <annotationProcessor>io.vertx.codegen.CodeGenProcessor</annotationProcessor>
</annotationProcessors>
<generatedSourcesDirectory>${project.basedir}/src/main/generated</generatedSourcesDirectory>
<compilerArgs>
  <arg>-AoutputDirectory=${project.basedir}/src/main</arg>
</compilerArgs>

Однако я хочу использовать vertx-maven-plugin fabric8 вместо плагина компилятора maven. Можно ли использовать vertx-maven-plugin fabric8 и использовать vertx-service-proxy? Где бы я поместил раздел codegen annotationProcessors?

Вот как выглядит мой плагин сборки:

<build>
    <plugins>
        <plugin>
            <groupId>io.fabric8</groupId>
            <artifactId>vertx-maven-plugin</artifactId>
            <version>${vertx-maven-plugin.version}</version>
            <executions>
                <execution>
                    <id>vmp</id>
                    <goals>
                        <goal>initialize</goal>
                        <goal>package</goal>
                    </goals>
                </execution>
            </executions>
            <configuration>
                <redeploy>true</redeploy>
            </configuration>
        </plugin>

    </plugins>
</build>

Я попытался добавить тег annotationProcessors в тег конфигурации выше, но он оказался недействительным.

Любые идеи? Спасибо.

0
Wan Li 21 Дек 2017 в 00:54

1 ответ

Лучший ответ

Что ж, я должен был прочитать документацию больше, прежде чем размещать ..

Мне просто нужно было добавить <classifier>processor</classifier> в мою помпу:

<dependency>
  <groupId>io.vertx</groupId>
  <artifactId>vertx-service-proxy</artifactId>
  <version>3.5.0</version>
  <classifier>processor</classifier>
</dependency>

Затем мне также нужно было определить файл package-info.java, в котором находится мой класс службы. После этого прокси сгенерировались нормально, даже с использованием vertx-maven-plugin fabric8.

0
Wan Li 20 Дек 2017 в 22:17