pom.xml 9.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!--
  3. Licensed under the Apache License, Version 2.0 (the "License");
  4. you may not use this file except in compliance with the License.
  5. You may obtain a copy of the License at
  6. http://www.apache.org/licenses/LICENSE-2.0
  7. Unless required by applicable law or agreed to in writing, software
  8. distributed under the License is distributed on an "AS IS" BASIS,
  9. WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  10. See the License for the specific language governing permissions and
  11. limitations under the License. See accompanying LICENSE file.
  12. --><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
  13. <modelVersion>4.0.0</modelVersion>
  14. <parent>
  15. <groupId>org.apache.hadoop</groupId>
  16. <artifactId>hadoop-project</artifactId>
  17. <version>3.2.4-SNAPSHOT</version>
  18. <relativePath>../../hadoop-project</relativePath>
  19. </parent>
  20. <artifactId>hadoop-yarn</artifactId>
  21. <version>3.2.4-SNAPSHOT</version>
  22. <packaging>pom</packaging>
  23. <name>Apache Hadoop YARN</name>
  24. <properties>
  25. <test.logs>true</test.logs>
  26. <test.timeout>600000</test.timeout>
  27. <yarn.basedir>${basedir}</yarn.basedir>
  28. <!-- Used by jdiff -->
  29. <!-- Antrun cannot resolve yarn.basedir, so we need to setup something else -->
  30. <dev-support.relative.dir>dev-support</dev-support.relative.dir>
  31. <hadoop.common.build.dir>${basedir}/../../../hadoop-common-project/hadoop-common/target</hadoop.common.build.dir>
  32. </properties>
  33. <!-- Do not add dependencies here, add them to the POM of the leaf module -->
  34. <build>
  35. <plugins>
  36. <plugin>
  37. <groupId>com.github.spotbugs</groupId>
  38. <artifactId>spotbugs-maven-plugin</artifactId>
  39. <configuration>
  40. <xmlOutput>true</xmlOutput>
  41. <excludeFilterFile>${yarn.basedir}/dev-support/findbugs-exclude.xml</excludeFilterFile>
  42. <effort>Max</effort>
  43. </configuration>
  44. </plugin>
  45. <plugin>
  46. <groupId>org.apache.rat</groupId>
  47. <artifactId>apache-rat-plugin</artifactId>
  48. <configuration>
  49. <excludes>
  50. <exclude>conf/workers</exclude>
  51. <exclude>conf/container-executor.cfg</exclude>
  52. <exclude>dev-support/jdiff/**</exclude>
  53. </excludes>
  54. </configuration>
  55. </plugin>
  56. <plugin>
  57. <groupId>org.apache.maven.plugins</groupId>
  58. <artifactId>maven-surefire-plugin</artifactId>
  59. <configuration>
  60. <properties>
  61. <property>
  62. <name>listener</name>
  63. <value>org.apache.hadoop.test.TimedOutTestsListener</value>
  64. </property>
  65. </properties>
  66. </configuration>
  67. </plugin>
  68. <plugin>
  69. <groupId>org.apache.maven.plugins</groupId>
  70. <artifactId>maven-javadoc-plugin</artifactId>
  71. <configuration>
  72. <excludePackageNames>org.apache.hadoop.yarn.proto:org.apache.hadoop.yarn.federation.proto:org.apache.hadoop.yarn.service</excludePackageNames>
  73. </configuration>
  74. </plugin>
  75. </plugins>
  76. </build>
  77. <profiles>
  78. <profile>
  79. <id>release</id>
  80. <build>
  81. <plugins>
  82. <plugin>
  83. <artifactId>maven-source-plugin</artifactId>
  84. <executions>
  85. <execution>
  86. <id>attach-sources</id>
  87. <goals>
  88. <!-- avoid warning about recursion -->
  89. <goal>jar-no-fork</goal>
  90. </goals>
  91. </execution>
  92. </executions>
  93. </plugin>
  94. </plugins>
  95. </build>
  96. </profile>
  97. <profile>
  98. <id>docs</id>
  99. <activation>
  100. <activeByDefault>false</activeByDefault>
  101. </activation>
  102. <properties>
  103. <jdiff.stable.api>2.7.2</jdiff.stable.api>
  104. <jdiff.stability>-unstable</jdiff.stability>
  105. <jdiff.compatibility></jdiff.compatibility>
  106. <jdiff.javadoc.maxmemory>512m</jdiff.javadoc.maxmemory>
  107. </properties>
  108. <dependencies>
  109. <dependency>
  110. <groupId>xerces</groupId>
  111. <artifactId>xercesImpl</artifactId>
  112. <version>${xerces.jdiff.version}</version>
  113. </dependency>
  114. </dependencies>
  115. <build>
  116. <plugins>
  117. <plugin>
  118. <groupId>org.apache.maven.plugins</groupId>
  119. <artifactId>maven-javadoc-plugin</artifactId>
  120. <executions>
  121. <execution>
  122. <goals>
  123. <goal>javadoc</goal>
  124. </goals>
  125. <phase>prepare-package</phase>
  126. </execution>
  127. </executions>
  128. </plugin>
  129. <plugin>
  130. <groupId>org.apache.maven.plugins</groupId>
  131. <artifactId>maven-dependency-plugin</artifactId>
  132. <executions>
  133. <execution>
  134. <id>site</id>
  135. <phase>prepare-package</phase>
  136. <goals>
  137. <goal>copy</goal>
  138. </goals>
  139. <configuration>
  140. <artifactItems>
  141. <artifactItem>
  142. <groupId>jdiff</groupId>
  143. <artifactId>jdiff</artifactId>
  144. <version>${jdiff.version}</version>
  145. <overWrite>false</overWrite>
  146. <outputDirectory>${project.build.directory}</outputDirectory>
  147. <destFileName>jdiff.jar</destFileName>
  148. </artifactItem>
  149. <artifactItem>
  150. <groupId>org.apache.hadoop</groupId>
  151. <artifactId>hadoop-annotations</artifactId>
  152. <version>${project.version}</version>
  153. <overWrite>false</overWrite>
  154. <outputDirectory>${project.build.directory}</outputDirectory>
  155. <destFileName>hadoop-annotations.jar</destFileName>
  156. </artifactItem>
  157. <artifactItem>
  158. <groupId>xerces</groupId>
  159. <artifactId>xercesImpl</artifactId>
  160. <version>${xerces.version.jdiff}</version>
  161. <overWrite>false</overWrite>
  162. <outputDirectory>${project.build.directory}</outputDirectory>
  163. <destFileName>xerces.jar</destFileName>
  164. </artifactItem>
  165. </artifactItems>
  166. </configuration>
  167. </execution>
  168. </executions>
  169. </plugin>
  170. <plugin>
  171. <groupId>org.apache.maven.plugins</groupId>
  172. <artifactId>maven-antrun-plugin</artifactId>
  173. <executions>
  174. <execution>
  175. <id>site</id>
  176. <phase>prepare-package</phase>
  177. <goals>
  178. <goal>run</goal>
  179. </goals>
  180. <configuration>
  181. <target if="should.run.jdiff">
  182. <!-- Jdiff -->
  183. <mkdir dir="${project.build.directory}/site/jdiff/xml"/>
  184. <javadoc maxmemory="${jdiff.javadoc.maxmemory}" verbose="yes">
  185. <doclet name="org.apache.hadoop.classification.tools.IncludePublicAnnotationsJDiffDoclet"
  186. path="${project.build.directory}/hadoop-annotations.jar:${project.build.directory}/jdiff.jar">
  187. <param name="-apidir" value="${project.build.directory}/site/jdiff/xml"/>
  188. <param name="-apiname" value="${project.name} ${project.version}"/>
  189. <param name="${jdiff.stability}"/>
  190. </doclet>
  191. <packageset dir="${basedir}/src/main/java"/>
  192. <classpath>
  193. <path refid="maven.compile.classpath"/>
  194. </classpath>
  195. </javadoc>
  196. <javadoc sourcepath="${basedir}/src/main/java"
  197. destdir="${project.build.directory}/site/jdiff/xml"
  198. sourceFiles="${dev-support.relative.dir}/jdiff/Null.java"
  199. maxmemory="${jdiff.javadoc.maxmemory}">
  200. <doclet name="org.apache.hadoop.classification.tools.IncludePublicAnnotationsJDiffDoclet"
  201. path="${project.build.directory}/hadoop-annotations.jar:${project.build.directory}/jdiff.jar:${project.build.directory}/xerces.jar">
  202. <param name="-oldapi" value="${project.name} ${jdiff.stable.api}"/>
  203. <param name="-newapi" value="${project.name} ${project.version}"/>
  204. <param name="-oldapidir" value="${basedir}/${dev-support.relative.dir}/jdiff"/>
  205. <param name="-newapidir" value="${project.build.directory}/site/jdiff/xml"/>
  206. <param name="-javadocold"
  207. value="https://hadoop.apache.org/docs/r${jdiff.stable.api}/api/"/>
  208. <param name="-javadocnew" value="${project.build.directory}/site/apidocs/"/>
  209. <param name="-stats"/>
  210. <param name="${jdiff.stability}"/>
  211. <!--param name="${jdiff.compatibility}"/-->
  212. </doclet>
  213. <classpath>
  214. <path refid="maven.compile.classpath"/>
  215. </classpath>
  216. </javadoc>
  217. </target>
  218. </configuration>
  219. </execution>
  220. </executions>
  221. </plugin>
  222. </plugins>
  223. </build>
  224. </profile>
  225. </profiles>
  226. <modules>
  227. <module>hadoop-yarn-api</module>
  228. <module>hadoop-yarn-common</module>
  229. <module>hadoop-yarn-server</module>
  230. <module>hadoop-yarn-applications</module>
  231. <module>hadoop-yarn-site</module>
  232. <module>hadoop-yarn-client</module>
  233. <module>hadoop-yarn-registry</module>
  234. <module>hadoop-yarn-ui</module>
  235. </modules>
  236. </project>