【发布时间】:2017-04-12 14:56:36
【问题描述】:
我有一个 Vaadin 7 maven Web 项目,其中包含一些在 META-INF/services 上创建服务定义的注释。
我将此添加到 pom 以便处理注释:
<!-- Run annotation processors on src/main/java sources -->
<plugin>
<groupId>org.bsc.maven</groupId>
<artifactId>maven-processor-plugin</artifactId>
<version>3.3.1</version>
<executions>
<execution>
<id>process</id>
<goals>
<goal>process</goal>
</goals>
<phase>generate-sources</phase>
</execution>
</executions>
</plugin>
文件显示在target/classes/META-INF/services 中,但没有进入最后的战争。
我尝试像这样将文件夹添加到 maven-war-plugin:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>3.0.0</version>
<configuration>
<failOnMissingWebXml>false</failOnMissingWebXml>
<packagingIncludes>target/classes/*</packagingIncludes>
</configuration>
</plugin>
但是大多数 Vaadin 文件都没有进入战争并且它不起作用。有什么想法吗?
【问题讨论】:
-
查看maven.apache.org/plugins/maven-war-plugin/usage.html 以确保您的项目结构正确并仔细检查复制的内容。
-
maven-compiler 插件会自动为您运行注释处理器。你不需要一个特殊的插件。处理器只需要在编译器类路径中 - 通常作为
provided范围依赖项。
标签: java maven maven-3 war vaadin7