vertx-ext-parent-38.pom 8.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265
  1. <?xml version="1.0"?>
  2. <!--
  3. ~ Copyright (c) 2011-2014 The original author or authors
  4. ~
  5. ~ All rights reserved. This program and the accompanying materials
  6. ~ are made available under the terms of the Eclipse Public License v1.0
  7. ~ and Apache License v2.0 which accompanies this distribution.
  8. ~
  9. ~ The Eclipse Public License is available at
  10. ~ http://www.eclipse.org/legal/epl-v10.html
  11. ~
  12. ~ The Apache License v2.0 is available at
  13. ~ http://www.opensource.org/licenses/apache2.0.php
  14. ~
  15. ~ You may elect to redistribute this code under either of these licenses.
  16. -->
  17. <project xmlns="http://maven.apache.org/POM/4.0.0"
  18. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  19. xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
  20. http://maven.apache.org/xsd/maven-4.0.0.xsd">
  21. <modelVersion>4.0.0</modelVersion>
  22. <parent>
  23. <groupId>io.vertx</groupId>
  24. <artifactId>vertx-ext</artifactId>
  25. <version>38</version>
  26. </parent>
  27. <artifactId>vertx-ext-parent</artifactId>
  28. <version>38</version>
  29. <packaging>pom</packaging>
  30. <name>Vert.x Ext Parent</name>
  31. <properties>
  32. <!--
  33. Configure plugins that skip building documentation that otherwise would fail without
  34. the documentation bits. This is useful in pom aggregators that don't have documentation
  35. to build, they change this property to true.
  36. -->
  37. <doc.skip>false</doc.skip>
  38. <!-- We skip sources jar generation as we do it with the assembly plugin to have greater
  39. control over the content -->
  40. <source.skip>true</source.skip>
  41. <generated.dir>${project.basedir}/src/main/generated</generated.dir>
  42. </properties>
  43. <build>
  44. <pluginManagement>
  45. <plugins>
  46. <plugin>
  47. <artifactId>maven-clean-plugin</artifactId>
  48. <executions>
  49. <execution>
  50. <id>default-clean</id>
  51. <configuration>
  52. <filesets>
  53. <fileset>
  54. <directory>${generated.dir}</directory>
  55. </fileset>
  56. </filesets>
  57. </configuration>
  58. </execution>
  59. </executions>
  60. </plugin>
  61. <plugin>
  62. <groupId>org.apache.maven.plugins</groupId>
  63. <artifactId>maven-javadoc-plugin</artifactId>
  64. <configuration>
  65. <sourcepath>${basedir}/src/main/java;${generated.dir}</sourcepath>
  66. <reportOutputDirectory>${project.build.directory}/docs</reportOutputDirectory>
  67. </configuration>
  68. </plugin>
  69. </plugins>
  70. </pluginManagement>
  71. <plugins>
  72. <!-- Generate sources before compilation -->
  73. <plugin>
  74. <groupId>org.bsc.maven</groupId>
  75. <artifactId>maven-processor-plugin</artifactId>
  76. <version>3.2.0</version>
  77. <executions>
  78. <execution>
  79. <id>generate-sources</id>
  80. <goals>
  81. <goal>process</goal>
  82. </goals>
  83. <phase>generate-sources</phase>
  84. <configuration>
  85. <systemProperties>
  86. <java.util.logging.SimpleFormatter.format>%4$s: %3$s - %5$s %6$s%n</java.util.logging.SimpleFormatter.format>
  87. </systemProperties>
  88. <processors>
  89. <processor>io.vertx.codegen.CodeGenProcessor</processor>
  90. <processor>io.vertx.docgen.JavaDocGenProcessor</processor>
  91. </processors>
  92. <optionMap>
  93. <codegen.output>${project.basedir}/src/main</codegen.output>
  94. <!-- Data object converters are placed in src/main/generated -->
  95. <codegen.output.data_object_converters>generated</codegen.output.data_object_converters>
  96. <docgen.source>${asciidoc.dir}/*.adoc</docgen.source>
  97. <docgen.output>${project.build.directory}/asciidoc/java</docgen.output>
  98. <maven.groupId>${project.groupId}</maven.groupId>
  99. <maven.artifactId>${project.artifactId}</maven.artifactId>
  100. <maven.version>${project.version}</maven.version>
  101. </optionMap>
  102. <defaultOutputDirectory>${project.build.directory}/generated-sources/codegen</defaultOutputDirectory>
  103. </configuration>
  104. </execution>
  105. </executions>
  106. </plugin>
  107. <plugin>
  108. <groupId>org.codehaus.mojo</groupId>
  109. <artifactId>build-helper-maven-plugin</artifactId>
  110. <executions>
  111. <execution>
  112. <id>add-source</id>
  113. <phase>generate-sources</phase>
  114. <goals>
  115. <goal>add-source</goal>
  116. </goals>
  117. <configuration>
  118. <sources>
  119. <source>${generated.dir}</source>
  120. </sources>
  121. </configuration>
  122. </execution>
  123. </executions>
  124. </plugin>
  125. <plugin>
  126. <artifactId>maven-javadoc-plugin</artifactId>
  127. <executions>
  128. <execution>
  129. <id>gen-javadoc</id>
  130. <phase>site</phase>
  131. <goals>
  132. <goal>javadoc</goal>
  133. </goals>
  134. <configuration>
  135. <skip>${doc.skip}</skip>
  136. </configuration>
  137. </execution>
  138. </executions>
  139. </plugin>
  140. <plugin>
  141. <groupId>org.asciidoctor</groupId>
  142. <artifactId>asciidoctor-maven-plugin</artifactId>
  143. <executions>
  144. <execution>
  145. <id>gen-asciidoc</id>
  146. <goals>
  147. <goal>process-asciidoc</goal>
  148. </goals>
  149. <phase>site</phase>
  150. <configuration>
  151. <skip>${doc.skip}</skip>
  152. <sourceDirectory>${project.build.directory}/asciidoc</sourceDirectory>
  153. <resources>
  154. <resource>
  155. <directory>${asciidoc.dir}</directory>
  156. <excludes>
  157. <exclude>**/*.ad</exclude>
  158. <exclude>**/*.adoc</exclude>
  159. </excludes>
  160. </resource>
  161. </resources>
  162. </configuration>
  163. </execution>
  164. </executions>
  165. </plugin>
  166. </plugins>
  167. </build>
  168. <profiles>
  169. <!-- Package generation -->
  170. <profile>
  171. <id>pkg</id>
  172. <activation>
  173. <property>
  174. <name>!skipPkg</name>
  175. </property>
  176. </activation>
  177. <build>
  178. <plugins>
  179. <plugin>
  180. <artifactId>maven-assembly-plugin</artifactId>
  181. <dependencies>
  182. <dependency>
  183. <groupId>io.vertx</groupId>
  184. <artifactId>vertx-ext-resources</artifactId>
  185. <version>38</version>
  186. </dependency>
  187. </dependencies>
  188. <executions>
  189. <!-- Package sources -->
  190. <execution>
  191. <id>package-sources</id>
  192. <phase>package</phase>
  193. <goals>
  194. <goal>single</goal>
  195. </goals>
  196. <configuration>
  197. <attach>true</attach>
  198. <archive>
  199. <!-- Need a manifest to avoid empty archive -->
  200. <manifest>
  201. </manifest>
  202. </archive>
  203. <descriptorRefs>
  204. <descriptorRef>sources</descriptorRef>
  205. </descriptorRefs>
  206. </configuration>
  207. </execution>
  208. <!-- Package docs -->
  209. <execution>
  210. <id>package-docs</id>
  211. <phase>package</phase>
  212. <goals>
  213. <goal>single</goal>
  214. </goals>
  215. <configuration>
  216. <skipAssembly>${doc.skip}</skipAssembly>
  217. <attach>true</attach>
  218. <descriptorRefs>
  219. <descriptorRef>docs</descriptorRef>
  220. </descriptorRefs>
  221. </configuration>
  222. </execution>
  223. </executions>
  224. </plugin>
  225. </plugins>
  226. </build>
  227. </profile>
  228. </profiles>
  229. <reporting>
  230. <plugins>
  231. <plugin>
  232. <groupId>org.apache.maven.plugins</groupId>
  233. <artifactId>maven-project-info-reports-plugin</artifactId>
  234. <version>2.7</version>
  235. <reportSets>
  236. <reportSet>
  237. <reports>
  238. </reports>
  239. </reportSet>
  240. </reportSets>
  241. </plugin>
  242. </plugins>
  243. </reporting>
  244. </project>