tetra 2.0.7 → 2.0.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (222) hide show
  1. checksums.yaml +4 -4
  2. data/CONTRIBUTING.md +3 -3
  3. data/README.md +5 -4
  4. data/bin/tetra +6 -4
  5. data/lib/template/bashrc +19 -14
  6. data/lib/template/bundled/apache-maven-3.9.12/LICENSE +616 -0
  7. data/lib/template/bundled/{apache-maven-3.9.9 → apache-maven-3.9.12}/NOTICE +0 -6
  8. data/lib/template/bundled/{apache-maven-3.9.9 → apache-maven-3.9.12}/bin/mvn +9 -0
  9. data/lib/template/bundled/{apache-maven-3.9.9 → apache-maven-3.9.12}/bin/mvn.cmd +14 -0
  10. data/lib/template/bundled/{apache-maven-3.9.9/boot/plexus-classworlds-2.8.0.jar → apache-maven-3.9.12/boot/plexus-classworlds-2.9.0.jar} +0 -0
  11. data/lib/template/bundled/apache-maven-3.9.12/lib/asm-9.9.jar +0 -0
  12. data/lib/template/bundled/apache-maven-3.9.12/lib/asm.license +29 -0
  13. data/lib/template/bundled/apache-maven-3.9.12/lib/commons-cli-1.11.0.jar +0 -0
  14. data/lib/template/bundled/apache-maven-3.9.12/lib/commons-codec-1.20.0.jar +0 -0
  15. data/lib/template/bundled/apache-maven-3.9.12/lib/error_prone_annotations-2.41.0.jar +0 -0
  16. data/lib/template/bundled/apache-maven-3.9.12/lib/failureaccess-1.0.3.jar +0 -0
  17. data/lib/template/bundled/apache-maven-3.9.12/lib/gson-2.13.2.jar +0 -0
  18. data/lib/template/bundled/apache-maven-3.9.12/lib/guava-33.5.0-jre.jar +0 -0
  19. data/lib/template/bundled/apache-maven-3.9.12/lib/guice-5.1.0-classes.jar +0 -0
  20. data/lib/template/bundled/{apache-maven-3.9.9/lib/jansi-2.4.1.jar → apache-maven-3.9.12/lib/jansi-2.4.2.jar} +0 -0
  21. data/lib/template/bundled/{apache-maven-3.9.9/lib/jansi-native/Windows/arm64/libjansi.so → apache-maven-3.9.12/lib/jansi-native/Windows/arm64/jansi.dll} +0 -0
  22. data/lib/template/bundled/apache-maven-3.9.12/lib/jspecify-1.0.0.jar +0 -0
  23. data/lib/template/bundled/{apache-maven-3.9.9/lib/maven-artifact-3.9.9.jar → apache-maven-3.9.12/lib/maven-artifact-3.9.12.jar} +0 -0
  24. data/lib/template/bundled/{apache-maven-3.9.9/lib/maven-builder-support-3.9.9.jar → apache-maven-3.9.12/lib/maven-builder-support-3.9.12.jar} +0 -0
  25. data/lib/template/bundled/{apache-maven-3.9.9/lib/maven-compat-3.9.9.jar → apache-maven-3.9.12/lib/maven-compat-3.9.12.jar} +0 -0
  26. data/lib/template/bundled/{apache-maven-3.9.9/lib/maven-core-3.9.9.jar → apache-maven-3.9.12/lib/maven-core-3.9.12.jar} +0 -0
  27. data/lib/template/bundled/apache-maven-3.9.12/lib/maven-embedder-3.9.12.jar +0 -0
  28. data/lib/template/bundled/apache-maven-3.9.12/lib/maven-model-3.9.12.jar +0 -0
  29. data/lib/template/bundled/{apache-maven-3.9.9/lib/maven-model-builder-3.9.9.jar → apache-maven-3.9.12/lib/maven-model-builder-3.9.12.jar} +0 -0
  30. data/lib/template/bundled/apache-maven-3.9.12/lib/maven-plugin-api-3.9.12.jar +0 -0
  31. data/lib/template/bundled/apache-maven-3.9.12/lib/maven-repository-metadata-3.9.12.jar +0 -0
  32. data/lib/template/bundled/{apache-maven-3.9.9/lib/maven-resolver-api-1.9.22.jar → apache-maven-3.9.12/lib/maven-resolver-api-1.9.25.jar} +0 -0
  33. data/lib/template/bundled/apache-maven-3.9.12/lib/maven-resolver-connector-basic-1.9.25.jar +0 -0
  34. data/lib/template/bundled/{apache-maven-3.9.9/lib/maven-resolver-impl-1.9.22.jar → apache-maven-3.9.12/lib/maven-resolver-impl-1.9.25.jar} +0 -0
  35. data/lib/template/bundled/{apache-maven-3.9.9/lib/maven-resolver-named-locks-1.9.22.jar → apache-maven-3.9.12/lib/maven-resolver-named-locks-1.9.25.jar} +0 -0
  36. data/lib/template/bundled/{apache-maven-3.9.9/lib/maven-resolver-provider-3.9.9.jar → apache-maven-3.9.12/lib/maven-resolver-provider-3.9.12.jar} +0 -0
  37. data/lib/template/bundled/{apache-maven-3.9.9/lib/maven-resolver-spi-1.9.22.jar → apache-maven-3.9.12/lib/maven-resolver-spi-1.9.25.jar} +0 -0
  38. data/lib/template/bundled/apache-maven-3.9.12/lib/maven-resolver-transport-file-1.9.25.jar +0 -0
  39. data/lib/template/bundled/apache-maven-3.9.12/lib/maven-resolver-transport-http-1.9.25.jar +0 -0
  40. data/lib/template/bundled/{apache-maven-3.9.9/lib/maven-resolver-transport-wagon-1.9.22.jar → apache-maven-3.9.12/lib/maven-resolver-transport-wagon-1.9.25.jar} +0 -0
  41. data/lib/template/bundled/{apache-maven-3.9.9/lib/maven-resolver-util-1.9.22.jar → apache-maven-3.9.12/lib/maven-resolver-util-1.9.25.jar} +0 -0
  42. data/lib/template/bundled/apache-maven-3.9.12/lib/maven-settings-3.9.12.jar +0 -0
  43. data/lib/template/bundled/{apache-maven-3.9.9/lib/maven-settings-builder-3.9.9.jar → apache-maven-3.9.12/lib/maven-settings-builder-3.9.12.jar} +0 -0
  44. data/lib/template/bundled/{apache-maven-3.9.9/lib/maven-slf4j-provider-3.9.9.jar → apache-maven-3.9.12/lib/maven-slf4j-provider-3.9.12.jar} +0 -0
  45. data/lib/template/bundled/{apache-maven-3.9.9/lib/org.eclipse.sisu.inject-0.9.0.M3.jar → apache-maven-3.9.12/lib/org.eclipse.sisu.inject-0.9.0.M4.jar} +0 -0
  46. data/lib/template/bundled/{apache-maven-3.9.9/lib/org.eclipse.sisu.plexus-0.9.0.M3.jar → apache-maven-3.9.12/lib/org.eclipse.sisu.plexus-0.9.0.M4.jar} +0 -0
  47. data/lib/template/bundled/apache-maven-3.9.12/lib/plexus-component-annotations-2.2.0.jar +0 -0
  48. data/lib/template/bundled/{apache-maven-3.9.9/lib/plexus-interpolation-1.27.jar → apache-maven-3.9.12/lib/plexus-interpolation-1.29.jar} +0 -0
  49. data/lib/template/bundled/apache-maven-3.9.12/lib/plexus-sec-dispatcher.license +202 -0
  50. data/lib/template/bundled/apache-maven-3.9.12/lib/plexus-utils-3.6.0.jar +0 -0
  51. data/lib/template/bundled/apache-maven-3.9.12/lib/plexus-utils.license +202 -0
  52. data/lib/template/kit.spec +3 -3
  53. data/lib/template/package.spec +13 -10
  54. data/lib/tetra/constants.rb +10 -1
  55. data/lib/tetra/data/license_map.yml +124 -0
  56. data/lib/tetra/facades/ant.rb +4 -7
  57. data/lib/tetra/facades/bash.rb +28 -19
  58. data/lib/tetra/facades/git.rb +69 -34
  59. data/lib/tetra/facades/gradle.rb +3 -2
  60. data/lib/tetra/facades/mvn.rb +8 -8
  61. data/lib/tetra/facades/process_runner.rb +58 -37
  62. data/lib/tetra/facades/tar.rb +5 -4
  63. data/lib/tetra/facades/unzip.rb +5 -4
  64. data/lib/tetra/generatable.rb +4 -3
  65. data/lib/tetra/kit.rb +12 -6
  66. data/lib/tetra/license_mapper.rb +34 -0
  67. data/lib/tetra/logger.rb +7 -4
  68. data/lib/tetra/maven_website.rb +64 -27
  69. data/lib/tetra/packages/kit_package.rb +4 -4
  70. data/lib/tetra/packages/package.rb +47 -8
  71. data/lib/tetra/packages/scriptable.rb +12 -8
  72. data/lib/tetra/packages/speccable.rb +7 -1
  73. data/lib/tetra/pom.rb +38 -16
  74. data/lib/tetra/pom_getter.rb +55 -43
  75. data/lib/tetra/project.rb +14 -15
  76. data/lib/tetra/project_initer.rb +32 -20
  77. data/lib/tetra/ui/change_sources_subcommand.rb +13 -7
  78. data/lib/tetra/ui/dry_run_subcommand.rb +5 -3
  79. data/lib/tetra/ui/generate_all_subcommand.rb +1 -1
  80. data/lib/tetra/ui/generate_kit_subcommand.rb +2 -1
  81. data/lib/tetra/ui/generate_script_subcommand.rb +2 -3
  82. data/lib/tetra/ui/generate_spec_subcommand.rb +3 -2
  83. data/lib/tetra/ui/get_pom_subcommand.rb +17 -12
  84. data/lib/tetra/ui/init_subcommand.rb +12 -4
  85. data/lib/tetra/ui/main.rb +6 -1
  86. data/lib/tetra/ui/move_jars_to_kit_subcommand.rb +2 -2
  87. data/lib/tetra/ui/patch_subcommand.rb +1 -1
  88. data/lib/tetra/ui/subcommand.rb +37 -31
  89. data/lib/tetra/version.rb +2 -3
  90. data/lib/tetra/version_matcher.rb +62 -44
  91. data/lib/tetra.rb +10 -6
  92. metadata +184 -274
  93. data/.github/ISSUE_TEMPLATE/bug_report.md +0 -26
  94. data/.github/ISSUE_TEMPLATE/feature_request.md +0 -15
  95. data/.github/dependabot.yml +0 -24
  96. data/.github/workflows/action-lint.yml +0 -15
  97. data/.github/workflows/codeql-analysis.yml +0 -94
  98. data/.github/workflows/dependency-review.yml +0 -17
  99. data/.github/workflows/markdown.yml +0 -23
  100. data/.github/workflows/rubocop.yml +0 -51
  101. data/.github/workflows/test.yml +0 -62
  102. data/.gitignore +0 -27
  103. data/.markdownlint.yaml +0 -11
  104. data/.rubocop.yml +0 -35
  105. data/.rubocop_todo.yml +0 -438
  106. data/.sonarcloud.properties +0 -4
  107. data/Gemfile +0 -6
  108. data/Gemfile.lock +0 -228
  109. data/Rakefile +0 -9
  110. data/lib/template/bundled/apache-maven-3.9.9/LICENSE +0 -760
  111. data/lib/template/bundled/apache-maven-3.9.9/lib/commons-cli-1.8.0.jar +0 -0
  112. data/lib/template/bundled/apache-maven-3.9.9/lib/commons-codec-1.17.1.jar +0 -0
  113. data/lib/template/bundled/apache-maven-3.9.9/lib/failureaccess-1.0.2.jar +0 -0
  114. data/lib/template/bundled/apache-maven-3.9.9/lib/guava-33.2.1-jre.jar +0 -0
  115. data/lib/template/bundled/apache-maven-3.9.9/lib/guice-5.1.0.jar +0 -0
  116. data/lib/template/bundled/apache-maven-3.9.9/lib/maven-embedder-3.9.9.jar +0 -0
  117. data/lib/template/bundled/apache-maven-3.9.9/lib/maven-model-3.9.9.jar +0 -0
  118. data/lib/template/bundled/apache-maven-3.9.9/lib/maven-plugin-api-3.9.9.jar +0 -0
  119. data/lib/template/bundled/apache-maven-3.9.9/lib/maven-repository-metadata-3.9.9.jar +0 -0
  120. data/lib/template/bundled/apache-maven-3.9.9/lib/maven-resolver-connector-basic-1.9.22.jar +0 -0
  121. data/lib/template/bundled/apache-maven-3.9.9/lib/maven-resolver-transport-file-1.9.22.jar +0 -0
  122. data/lib/template/bundled/apache-maven-3.9.9/lib/maven-resolver-transport-http-1.9.22.jar +0 -0
  123. data/lib/template/bundled/apache-maven-3.9.9/lib/maven-settings-3.9.9.jar +0 -0
  124. data/lib/template/bundled/apache-maven-3.9.9/lib/plexus-component-annotations-2.1.0.jar +0 -0
  125. data/lib/template/bundled/apache-maven-3.9.9/lib/plexus-utils-3.5.1.jar +0 -0
  126. data/lib/template/bundled/apache-maven-3.9.9/lib/plexus-xml-3.0.1.jar +0 -0
  127. data/lib/template/kit/.keep +0 -1
  128. data/lib/template/kit/jars/.keep +0 -1
  129. data/lib/template/packages/.keep +0 -1
  130. data/lib/template/src/.keep +0 -1
  131. data/spec/data/ant-super-simple-code/build/HW.class +0 -0
  132. data/spec/data/ant-super-simple-code/build/mypackage/HW.class +0 -0
  133. data/spec/data/ant-super-simple-code/build.xml +0 -133
  134. data/spec/data/ant-super-simple-code/dist/antsimple-20130618.jar +0 -0
  135. data/spec/data/ant-super-simple-code/lib/junit-4.11.jar +0 -0
  136. data/spec/data/ant-super-simple-code/lib/log4j-1.2.13.jar +0 -0
  137. data/spec/data/ant-super-simple-code/src/mypackage/HW.java +0 -15
  138. data/spec/data/antlr/antlr-2.7.2.jar +0 -0
  139. data/spec/data/antlr/pom.xml +0 -6
  140. data/spec/data/commons-collections4-4.5.0-M2-src.tar.gz +0 -0
  141. data/spec/data/commons-collections4-4.5.0-M2-src.zip +0 -0
  142. data/spec/data/commons-logging/commons-logging-1.3.4.jar +0 -0
  143. data/spec/data/commons-logging/parent_pom.xml +0 -1995
  144. data/spec/data/commons-logging/pom.xml +0 -833
  145. data/spec/data/nailgun/nailgun-0.7.1.jar +0 -0
  146. data/spec/data/nailgun/pom.xml +0 -153
  147. data/spec/data/struts-apps/pom.xml +0 -1147
  148. data/spec/data/tomcat/pom.xml +0 -33
  149. data/spec/lib/coarse/dry_run_subcommand_spec.rb +0 -59
  150. data/spec/lib/coarse/generate_all_subcommand_spec.rb +0 -132
  151. data/spec/lib/coarse/generate_spec_subcommand_spec.rb +0 -30
  152. data/spec/lib/coarse/init_subcommand_spec.rb +0 -101
  153. data/spec/lib/coarse/main_spec.rb +0 -21
  154. data/spec/lib/fine/ant_spec.rb +0 -25
  155. data/spec/lib/fine/git_spec.rb +0 -181
  156. data/spec/lib/fine/kit_package_spec.rb +0 -31
  157. data/spec/lib/fine/kit_spec.rb +0 -27
  158. data/spec/lib/fine/maven_website_spec.rb +0 -61
  159. data/spec/lib/fine/mvn_spec.rb +0 -27
  160. data/spec/lib/fine/package_spec.rb +0 -68
  161. data/spec/lib/fine/pom_getter_spec.rb +0 -36
  162. data/spec/lib/fine/pom_spec.rb +0 -98
  163. data/spec/lib/fine/project_spec.rb +0 -234
  164. data/spec/lib/fine/scriptable_spec.rb +0 -56
  165. data/spec/lib/fine/speccable_spec.rb +0 -93
  166. data/spec/lib/fine/tar_spec.rb +0 -22
  167. data/spec/lib/fine/unzip_spec.rb +0 -22
  168. data/spec/lib/fine/version_matcher_spec.rb +0 -64
  169. data/spec/spec_helper.rb +0 -90
  170. data/tetra.gemspec +0 -44
  171. data/utils/delete_nonet_user.sh +0 -8
  172. data/utils/setup_nonet_user.sh +0 -8
  173. /data/lib/template/bundled/{apache-maven-3.9.9 → apache-maven-3.9.12}/README.txt +0 -0
  174. /data/lib/template/bundled/{apache-maven-3.9.9 → apache-maven-3.9.12}/bin/m2.conf +0 -0
  175. /data/lib/template/bundled/{apache-maven-3.9.9 → apache-maven-3.9.12}/bin/mvnDebug +0 -0
  176. /data/lib/template/bundled/{apache-maven-3.9.9 → apache-maven-3.9.12}/bin/mvnDebug.cmd +0 -0
  177. /data/lib/template/bundled/{apache-maven-3.9.9 → apache-maven-3.9.12}/bin/mvnyjp +0 -0
  178. /data/lib/template/bundled/{apache-maven-3.9.9 → apache-maven-3.9.12}/boot/plexus-classworlds.license +0 -0
  179. /data/lib/template/bundled/{apache-maven-3.9.9 → apache-maven-3.9.12}/conf/logging/simplelogger.properties +0 -0
  180. /data/lib/template/bundled/{apache-maven-3.9.9 → apache-maven-3.9.12}/conf/settings.xml +0 -0
  181. /data/lib/template/bundled/{apache-maven-3.9.9 → apache-maven-3.9.12}/conf/toolchains.xml +0 -0
  182. /data/lib/template/bundled/{apache-maven-3.9.9 → apache-maven-3.9.12}/lib/aopalliance-1.0.jar +0 -0
  183. /data/lib/template/bundled/{apache-maven-3.9.9 → apache-maven-3.9.12}/lib/aopalliance.license +0 -0
  184. /data/lib/template/bundled/{apache-maven-3.9.9 → apache-maven-3.9.12}/lib/commons-cli.license +0 -0
  185. /data/lib/template/bundled/{apache-maven-3.9.9 → apache-maven-3.9.12}/lib/commons-codec.license +0 -0
  186. /data/lib/template/bundled/{apache-maven-3.9.9/lib/failureaccess.license → apache-maven-3.9.12/lib/error_prone_annotations.license} +0 -0
  187. /data/lib/template/bundled/{apache-maven-3.9.9 → apache-maven-3.9.12}/lib/ext/README.txt +0 -0
  188. /data/lib/template/bundled/{apache-maven-3.9.9 → apache-maven-3.9.12}/lib/ext/hazelcast/README.txt +0 -0
  189. /data/lib/template/bundled/{apache-maven-3.9.9 → apache-maven-3.9.12}/lib/ext/redisson/README.txt +0 -0
  190. /data/lib/template/bundled/{apache-maven-3.9.9/lib/guava.license → apache-maven-3.9.12/lib/failureaccess.license} +0 -0
  191. /data/lib/template/bundled/{apache-maven-3.9.9/lib/guice.license → apache-maven-3.9.12/lib/gson.license} +0 -0
  192. /data/lib/template/bundled/{apache-maven-3.9.9/lib/httpclient.license → apache-maven-3.9.12/lib/guava.license} +0 -0
  193. /data/lib/template/bundled/{apache-maven-3.9.9/lib/httpcore.license → apache-maven-3.9.12/lib/guice.license} +0 -0
  194. /data/lib/template/bundled/{apache-maven-3.9.9 → apache-maven-3.9.12}/lib/httpclient-4.5.14.jar +0 -0
  195. /data/lib/template/bundled/{apache-maven-3.9.9/lib/jansi.license → apache-maven-3.9.12/lib/httpclient.license} +0 -0
  196. /data/lib/template/bundled/{apache-maven-3.9.9 → apache-maven-3.9.12}/lib/httpcore-4.4.16.jar +0 -0
  197. /data/lib/template/bundled/{apache-maven-3.9.9/lib/javax.inject.license → apache-maven-3.9.12/lib/httpcore.license} +0 -0
  198. /data/lib/template/bundled/{apache-maven-3.9.9 → apache-maven-3.9.12}/lib/jansi-native/README.txt +0 -0
  199. /data/lib/template/bundled/{apache-maven-3.9.9 → apache-maven-3.9.12}/lib/jansi-native/Windows/x86/jansi.dll +0 -0
  200. /data/lib/template/bundled/{apache-maven-3.9.9 → apache-maven-3.9.12}/lib/jansi-native/Windows/x86_64/jansi.dll +0 -0
  201. /data/lib/template/bundled/{apache-maven-3.9.9/lib/jcl-over-slf4j.license → apache-maven-3.9.12/lib/jansi.license} +0 -0
  202. /data/lib/template/bundled/{apache-maven-3.9.9 → apache-maven-3.9.12}/lib/javax.annotation-api-1.3.2.jar +0 -0
  203. /data/lib/template/bundled/{apache-maven-3.9.9 → apache-maven-3.9.12}/lib/javax.annotation-api.license +0 -0
  204. /data/lib/template/bundled/{apache-maven-3.9.9 → apache-maven-3.9.12}/lib/javax.inject-1.jar +0 -0
  205. /data/lib/template/bundled/{apache-maven-3.9.9/lib/plexus-cipher.license → apache-maven-3.9.12/lib/javax.inject.license} +0 -0
  206. /data/lib/template/bundled/{apache-maven-3.9.9 → apache-maven-3.9.12}/lib/jcl-over-slf4j-1.7.36.jar +0 -0
  207. /data/lib/template/bundled/{apache-maven-3.9.9/lib/plexus-component-annotations.license → apache-maven-3.9.12/lib/jcl-over-slf4j.license} +0 -0
  208. /data/lib/template/bundled/{apache-maven-3.9.9/lib/plexus-interpolation.license → apache-maven-3.9.12/lib/jspecify.license} +0 -0
  209. /data/lib/template/bundled/{apache-maven-3.9.9 → apache-maven-3.9.12}/lib/maven-shared-utils-3.4.2.jar +0 -0
  210. /data/lib/template/bundled/{apache-maven-3.9.9 → apache-maven-3.9.12}/lib/org.eclipse.sisu.inject.license +0 -0
  211. /data/lib/template/bundled/{apache-maven-3.9.9 → apache-maven-3.9.12}/lib/org.eclipse.sisu.plexus.license +0 -0
  212. /data/lib/template/bundled/{apache-maven-3.9.9 → apache-maven-3.9.12}/lib/plexus-cipher-2.0.jar +0 -0
  213. /data/lib/template/bundled/{apache-maven-3.9.9/lib/plexus-sec-dispatcher.license → apache-maven-3.9.12/lib/plexus-cipher.license} +0 -0
  214. /data/lib/template/bundled/{apache-maven-3.9.9/lib/plexus-utils.license → apache-maven-3.9.12/lib/plexus-component-annotations.license} +0 -0
  215. /data/lib/template/bundled/{apache-maven-3.9.9/lib/plexus-xml.license → apache-maven-3.9.12/lib/plexus-interpolation.license} +0 -0
  216. /data/lib/template/bundled/{apache-maven-3.9.9 → apache-maven-3.9.12}/lib/plexus-sec-dispatcher-2.0.jar +0 -0
  217. /data/lib/template/bundled/{apache-maven-3.9.9 → apache-maven-3.9.12}/lib/slf4j-api-1.7.36.jar +0 -0
  218. /data/lib/template/bundled/{apache-maven-3.9.9 → apache-maven-3.9.12}/lib/slf4j-api.license +0 -0
  219. /data/lib/template/bundled/{apache-maven-3.9.9 → apache-maven-3.9.12}/lib/wagon-file-3.5.3.jar +0 -0
  220. /data/lib/template/bundled/{apache-maven-3.9.9 → apache-maven-3.9.12}/lib/wagon-http-3.5.3.jar +0 -0
  221. /data/lib/template/bundled/{apache-maven-3.9.9 → apache-maven-3.9.12}/lib/wagon-http-shared-3.5.3.jar +0 -0
  222. /data/lib/template/bundled/{apache-maven-3.9.9 → apache-maven-3.9.12}/lib/wagon-provider-api-3.5.3.jar +0 -0
@@ -1,1995 +0,0 @@
1
- <?xml version="1.0" encoding="ISO-8859-1"?>
2
- <!--
3
-
4
- Licensed to the Apache Software Foundation (ASF) under one or more
5
- contributor license agreements. See the NOTICE file distributed with
6
- this work for additional information regarding copyright ownership.
7
- The ASF licenses this file to You under the Apache License, Version 2.0
8
- (the "License"); you may not use this file except in compliance with
9
- the License. You may obtain a copy of the License at
10
-
11
- http://www.apache.org/licenses/LICENSE-2.0
12
-
13
- Unless required by applicable law or agreed to in writing, software
14
- distributed under the License is distributed on an "AS IS" BASIS,
15
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
- See the License for the specific language governing permissions and
17
- limitations under the License.
18
-
19
- -->
20
- <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
21
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
22
- <modelVersion>4.0.0</modelVersion>
23
- <parent>
24
- <groupId>org.apache</groupId>
25
- <artifactId>apache</artifactId>
26
- <version>27</version>
27
- </parent>
28
- <groupId>org.apache.commons</groupId>
29
- <artifactId>commons-parent</artifactId>
30
- <version>54-SNAPSHOT</version>
31
- <packaging>pom</packaging>
32
- <name>Apache Commons Parent</name>
33
- <description>The Apache Commons Parent POM provides common settings for all Apache Commons components.</description>
34
- <!--
35
- To avoid propagation to components, do not define the inceptionYear here
36
- <inceptionYear>2006</inceptionYear>
37
- -->
38
- <url>https://commons.apache.org/commons-parent-pom.html</url>
39
-
40
- <!--
41
- In release 31, the maven.compile.* properties were corrected to maven.compiler.*
42
- [See COMMONSSITE-69]
43
- If updating from a previous version, please check the property definitions
44
-
45
- Starting with version 22, the RAT plugin has changed Maven group and id, so any existing configuration
46
- needs to be updated.
47
- To fix component POMs, please change any occurrences of:
48
- <groupId>org.codehaus.mojo</groupId>
49
- <artifactId>rat-maven-plugin</artifactId>
50
- to the new values:
51
- <groupId>org.apache.rat</groupId>
52
- <artifactId>apache-rat-plugin</artifactId>
53
-
54
- Site deployment
55
- ===============
56
- Cannot define this here at present, see https://issues.apache.org/jira/browse/COMMONSSITE-26.
57
-
58
- The following should be added to the component POM:
59
-
60
- <distributionManagement>
61
- <site>
62
- <id>commons.site</id>
63
- <name>Apache Commons Site SVN</name>
64
- <url>scm:svn:${commons.scmPubUrl}</url>
65
- </site>
66
- </distributionManagement>
67
-
68
- Alternatively you can map the component's existing site id to the
69
- commons.scmPubServer property.
70
-
71
- Coverage tool selection
72
- =======================
73
- Starting with release 30, there are optional profiles for both Cobertura and JaCoCo.
74
- These can be enabled independently on the command-line:
75
-
76
- mvn site -Pcobertura -Pjacoco
77
-
78
- Or the component can define a default coverage tool by creating either (or both) of the following files:
79
-
80
- src/site/resources/profile.cobertura
81
- src/site/resources/profile.jacoco
82
-
83
- These can later be overridden by cancelling the profile:
84
-
85
- mvn site -P!jacoco
86
-
87
- -->
88
-
89
-
90
- <properties>
91
- <!-- Minimum Maven version required by the plugins -->
92
- <minimalMavenBuildVersion>3.3.9</minimalMavenBuildVersion>
93
- <!-- configuration bits for cutting a release candidate, must be overridden by components -->
94
- <!-- TODO How can we make project.build.outputTimestamp and changes.xml's release data the same? -->
95
- <project.build.outputTimestamp>2022-04-06T22:10:39Z</project.build.outputTimestamp>
96
- <commons.release.version>${project.version}</commons.release.version>
97
- <commons.rc.version>RC1</commons.rc.version>
98
- <commons.jira.id>COMMONSSITE</commons.jira.id>
99
-
100
- <!-- Default configuration for compiler source and target JVM -->
101
- <!-- Do NOT change this; it must remain as 1.3 -->
102
- <!--
103
- It's important that child POMs don't need to change when the parent POM is updated.
104
- At the time when these properties were introduced, the default Java version was 1.3.
105
- Thus components that failed to define the version would not be affected by updates
106
- to the Commons Parent or its parent the Apache pom.
107
- Of course most if not all components now define the properties.
108
- However it's still important to keep the properties as they effectively
109
- force child poms to define the Java version they require.
110
- -->
111
- <maven.compiler.source>1.3</maven.compiler.source>
112
- <maven.compiler.target>1.3</maven.compiler.target>
113
-
114
- <!-- compiler and surefire plugin settings for "java" profiles -->
115
- <commons.compiler.fork>false</commons.compiler.fork>
116
- <commons.compiler.compilerVersion />
117
- <commons.compiler.javac />
118
- <commons.compiler.javadoc />
119
-
120
- <!-- plugin versions (allows same value in reporting and build sections; also allows easy override) -->
121
- <commons.animal-sniffer.version>1.21</commons.animal-sniffer.version>
122
- <!-- Almost all signatures use version 1.0. Allow override just in case -->
123
- <commons.animal-sniffer.signature.version>1.0</commons.animal-sniffer.signature.version>
124
- <commons.assembly-plugin.version>3.4.2</commons.assembly-plugin.version>
125
- <commons.build-helper.version>3.3.0</commons.build-helper.version>
126
- <commons.build-plugin.version>1.12</commons.build-plugin.version>
127
- <commons.changes.version>2.12.1</commons.changes.version>
128
- <commons.checkstyle-plugin.version>3.1.2</commons.checkstyle-plugin.version>
129
- <commons.checkstyle.version>9.3</commons.checkstyle.version>
130
- <commons.clirr.version>2.8</commons.clirr.version>
131
- <commons.cobertura.version>2.7</commons.cobertura.version>
132
- <commons.compiler.version>3.10.1</commons.compiler.version>
133
- <commons.coveralls.version>4.3.0</commons.coveralls.version>
134
- <commons.coveralls.timestampFormat>EpochMillis</commons.coveralls.timestampFormat>
135
- <commons.failsafe.version>2.22.2</commons.failsafe.version>
136
- <commons.felix.version>5.1.7</commons.felix.version>
137
- <commons.findbugs.version>3.0.5</commons.findbugs.version>
138
- <commons.jacoco.version>0.8.8</commons.jacoco.version>
139
- <commons.japicmp.version>0.15.7</commons.japicmp.version>
140
- <commons.jar-plugin.version>3.2.2</commons.jar-plugin.version>
141
- <commons.javadoc.version>3.4.0</commons.javadoc.version>
142
- <commons.jxr.version>3.2.0</commons.jxr.version>
143
- <commons.pmd.version>3.17.0</commons.pmd.version>
144
- <commons.pmd-impl.version>6.47.0</commons.pmd-impl.version>
145
- <commons.project-info.version>3.4.0</commons.project-info.version>
146
- <commons.rat.version>0.14</commons.rat.version>
147
- <commons.release-plugin.version>1.8.0</commons.release-plugin.version>
148
- <commons.scm-publish.version>1.1</commons.scm-publish.version>
149
- <commons.enforcer-plugin.version>3.1.0</commons.enforcer-plugin.version>
150
- <commons.buildnumber-plugin.version>3.0.0</commons.buildnumber-plugin.version>
151
- <commons.biz.aQute.bndlib.version>6.3.1</commons.biz.aQute.bndlib.version>
152
-
153
- <!--
154
- Note: Maven site plugin 3.5.1 is the latest version but is not a direct replacement:
155
-
156
- https://maven.apache.org/plugins/maven-site-plugin/migrate.html
157
-
158
- In particular, adding CDATA to header and footer sections is not backwards compatible.
159
- I.e. these have to be updated at the same time.
160
-
161
- Also it causes the following errors:
162
-
163
- [ERROR] Failed to execute goal org.apache.maven.plugins:maven-site-plugin:3.5.1:site (default-site) on project commons-parent:
164
- Execution default-site of goal org.apache.maven.plugins:maven-site-plugin:3.5.1:site failed:
165
- A required class was missing while executing org.apache.maven.plugins:maven-site-plugin:3.5.1:site: org/apache/maven/doxia/sink/impl/XhtmlBaseSink
166
-
167
- This is because Apache POM 17 forces an older version of Doxia core:
168
- https://mail-archives.apache.org/mod_mbox/maven-users/201602.mbox/%3C2337255.xU7aS9G1qr@herve-desktop%3E
169
-
170
- The same error applies when running with version 3.5.
171
-
172
- Since the version is defined as a property, the CP version can be overridden as follows if necessary:
173
-
174
- mvn site -Dcommons.site-plugin.version=3.5.1
175
-
176
- You will also need to add a dependency on Doxia core:
177
- <artifactId>maven-site-plugin</artifactId>
178
- <dependencies>
179
- <dependency>
180
- <groupId>org.apache.maven.doxia</groupId>
181
- <artifactId>doxia-core</artifactId>
182
- <version>1.8</version>
183
- </dependency>
184
- </dependencies>
185
-
186
- -->
187
- <!--
188
- Warning: site-plugin 3.9.0 causes the following error:
189
- An API incompatibility was encountered while executing
190
- org.apache.maven.plugins:maven-site-plugin:3.9.0:site:
191
- java.lang.NoSuchMethodError: org.codehaus.plexus.util.xml.Xpp3Dom.getInputLocation()Ljava/lang/Object;
192
- -->
193
- <commons.site-plugin.version>3.12.0</commons.site-plugin.version>
194
- <commons.source-plugin.version>3.2.1</commons.source-plugin.version>
195
- <commons.spotbugs.plugin.version>4.7.1.0</commons.spotbugs.plugin.version>
196
- <commons.spotbugs.impl.version>4.7.1</commons.spotbugs.impl.version>
197
- <commons.surefire-report.version>2.22.2</commons.surefire-report.version>
198
- <commons.surefire.version>2.22.2</commons.surefire.version>
199
- <commons.wagon-ssh.version>3.5.2</commons.wagon-ssh.version>
200
-
201
- <!-- Default values for the download-page generation by commons-build-plugin -->
202
- <commons.release.name>${project.artifactId}-${commons.release.version}</commons.release.name>
203
- <commons.release.desc />
204
- <commons.binary.suffix>-bin</commons.binary.suffix>
205
- <commons.release.2.name>${project.artifactId}-${commons.release.2.version}</commons.release.2.name>
206
- <commons.release.2.desc />
207
- <commons.release.2.binary.suffix>-bin</commons.release.2.binary.suffix>
208
- <commons.release.3.name>${project.artifactId}-${commons.release.3.version}</commons.release.3.name>
209
- <commons.release.3.desc />
210
- <commons.release.3.binary.suffix>-bin</commons.release.3.binary.suffix>
211
- <commons.release.4.desc />
212
- <commons.release.4.binary.suffix>-bin</commons.release.4.binary.suffix>
213
-
214
- <!-- Default values for the jacoco-maven-plugin reports -->
215
- <commons.jacoco.classRatio>1.00</commons.jacoco.classRatio>
216
- <commons.jacoco.instructionRatio>0.90</commons.jacoco.instructionRatio>
217
- <commons.jacoco.methodRatio>0.95</commons.jacoco.methodRatio>
218
- <commons.jacoco.branchRatio>0.85</commons.jacoco.branchRatio>
219
- <commons.jacoco.complexityRatio>0.85</commons.jacoco.complexityRatio>
220
- <commons.jacoco.lineRatio>0.90</commons.jacoco.lineRatio>
221
- <commons.jacoco.haltOnFailure>false</commons.jacoco.haltOnFailure>
222
-
223
- <!-- The Commons component id is used on the distribution server, for example:
224
- - Use dbcp instead of dbcp2.
225
- - Use collections instead of collections4.
226
- - Use lang instead of lang3.
227
- - Use pool instead of pool2.
228
- - and so on...
229
- -->
230
- <commons.componentid>${project.artifactId}</commons.componentid>
231
-
232
- <!-- The package id is substring of the package name from o.a.commons.(.*)., for example:
233
- - Use dbcp2 instead of dbcp.
234
- - Use collections4 instead of collections.
235
- - Use lang3 instead of lang.
236
- - Use pool2 instead of pool.
237
- - and so on...
238
- -->
239
- <commons.packageId>${project.artifactId}</commons.packageId>
240
-
241
- <!-- Configuration properties for the OSGi maven-bundle-plugin -->
242
- <commons.osgi.symbolicName>org.apache.commons.${commons.packageId}</commons.osgi.symbolicName>
243
- <commons.osgi.export>org.apache.commons.*;version=${project.version};-noimport:=true</commons.osgi.export>
244
- <commons.osgi.import>*</commons.osgi.import>
245
- <commons.osgi.dynamicImport />
246
- <commons.osgi.private />
247
- <commons.osgi.excludeDependencies>true</commons.osgi.excludeDependencies>
248
-
249
- <!-- location of any manifest file used by maven-jar-plugin -->
250
- <commons.manifestfile>${project.build.directory}/osgi/MANIFEST.MF</commons.manifestfile>
251
-
252
- <!--
253
- Make the deployment protocol pluggable. This allows to switch to
254
- other protocols like scpexe, which some users prefer over scp.
255
- -->
256
- <commons.deployment.protocol>scp</commons.deployment.protocol>
257
-
258
- <!--
259
- Encoding of Java source files: ensures that the compiler and
260
- the javadoc generator use the right encoding. Subprojects may
261
- overwrite this, if they are using another encoding.
262
- -->
263
- <commons.encoding>iso-8859-1</commons.encoding>
264
- <!-- used in this pom to provide the Javadoc HTML file encoding -->
265
- <commons.docEncoding>${commons.encoding}</commons.docEncoding>
266
- <!-- Define source encoding for filtering; used by general plugins -->
267
- <project.build.sourceEncoding>${commons.encoding}</project.build.sourceEncoding>
268
- <!-- This is used by reporting plugins -->
269
- <project.reporting.outputEncoding>${commons.encoding}</project.reporting.outputEncoding>
270
-
271
- <!-- Javadoc link to Java API. Default is Java 1.7; components can override to other versions -->
272
- <commons.javadoc6.java.link>https://docs.oracle.com/javase/6/docs/api/</commons.javadoc6.java.link>
273
- <commons.javadoc7.java.link>https://docs.oracle.com/javase/7/docs/api/</commons.javadoc7.java.link>
274
- <commons.javadoc8.java.link>https://docs.oracle.com/javase/8/docs/api/</commons.javadoc8.java.link>
275
- <commons.javadoc9.java.link>https://docs.oracle.com/javase/9/docs/api/</commons.javadoc9.java.link>
276
- <commons.javadoc10.java.link>https://docs.oracle.com/javase/10/docs/api/</commons.javadoc10.java.link>
277
- <commons.javadoc11.java.link>https://docs.oracle.com/en/java/javase/11/docs/api/</commons.javadoc11.java.link>
278
- <commons.javadoc12.java.link>https://docs.oracle.com/en/java/javase/12/docs/api/</commons.javadoc12.java.link>
279
- <commons.javadoc13.java.link>https://docs.oracle.com/en/java/javase/13/docs/api/</commons.javadoc13.java.link>
280
- <commons.javadoc14.java.link>https://docs.oracle.com/en/java/javase/14/docs/api/</commons.javadoc14.java.link>
281
- <commons.javadoc15.java.link>https://docs.oracle.com/en/java/javase/15/docs/api/</commons.javadoc15.java.link>
282
- <commons.javadoc16.java.link>https://docs.oracle.com/en/java/javase/16/docs/api/</commons.javadoc16.java.link>
283
- <commons.javadoc17.java.link>https://docs.oracle.com/en/java/javase/17/docs/api/</commons.javadoc17.java.link>
284
- <commons.javadoc18.java.link>https://docs.oracle.com/en/java/javase/18/docs/api/</commons.javadoc18.java.link>
285
-
286
- <commons.javadoc.java.link>${commons.javadoc7.java.link}</commons.javadoc.java.link>
287
-
288
- <commons.javadoc.javaee5.link>https://docs.oracle.com/javaee/5/api/</commons.javadoc.javaee5.link>
289
- <commons.javadoc.javaee6.link>https://docs.oracle.com/javaee/6/api/</commons.javadoc.javaee6.link>
290
- <commons.javadoc.javaee7.link>https://docs.oracle.com/javaee/7/api/</commons.javadoc.javaee7.link>
291
-
292
- <commons.javadoc.javaee.link>${commons.javadoc.javaee6.link}</commons.javadoc.javaee.link>
293
-
294
- <!-- build meta inf -->
295
- <maven.build.timestamp.format>yyyy-MM-dd HH:mm:ssZ</maven.build.timestamp.format>
296
- <implementation.build>${scmBranch}@r${buildNumber}; ${maven.build.timestamp}</implementation.build>
297
-
298
- <!-- Allow Clirr severity to be overriden by the command-line option -DminSeverity=level -->
299
- <minSeverity>info</minSeverity>
300
-
301
- <!-- Control number of issues retrieved from JIRA with changes plugin -->
302
- <commons.changes.maxEntries>100</commons.changes.maxEntries>
303
-
304
- <!-- Allow surefire-report aggregation to be easily configured for multi-module projects -->
305
- <commons.surefire-report.aggregate>false</commons.surefire-report.aggregate>
306
-
307
- <!-- Allow changes Jira report to be restricted to just the current version (plugin default is false) -->
308
- <commons.changes.onlyCurrentVersion>false</commons.changes.onlyCurrentVersion>
309
- <!-- Allow changes Jira report maxEntries to be overridden (plugin default 100) -->
310
- <commons.changes.maxEntries>100</commons.changes.maxEntries>
311
- <!-- Allow changes Jira report runOnlyAtExecutionRoot to be overridden (plugin default is false) -->
312
- <commons.changes.runOnlyAtExecutionRoot>false</commons.changes.runOnlyAtExecutionRoot>
313
-
314
- <!-- scm publish plugin configuration -->
315
- <commons.site.cache>${user.home}/commons-sites</commons.site.cache>
316
- <!-- value modules can override it -->
317
- <commons.site.path>${commons.componentid}</commons.site.path>
318
-
319
- <commons.scmPubUrl>https://svn.apache.org/repos/infra/websites/production/commons/content/proper/commons-${commons.componentid}</commons.scmPubUrl>
320
- <commons.scmPubCheckoutDirectory>${commons.site.cache}/${commons.site.path}</commons.scmPubCheckoutDirectory>
321
- <commons.scmPubServer>commons.site</commons.scmPubServer>
322
-
323
- <!-- allow japicmp's breakBuildOnBinaryIncompatibleModifications
324
- to be overridden, plugin's default is false -->
325
- <commons.japicmp.breakBuildOnBinaryIncompatibleModifications>true</commons.japicmp.breakBuildOnBinaryIncompatibleModifications>
326
- <commons.japicmp.breakBuildOnSourceIncompatibleModifications>false</commons.japicmp.breakBuildOnSourceIncompatibleModifications>
327
- <commons.japicmp.ignoreMissingClasses>false</commons.japicmp.ignoreMissingClasses>
328
-
329
- <!-- Commons Release plugin: dist dev site -->
330
- <commons.distSvnStagingUrl>scm:svn:https://dist.apache.org/repos/dist/dev/commons/${commons.componentid}</commons.distSvnStagingUrl>
331
-
332
- <!-- Commons Release plugin: release manager -->
333
- <commons.releaseManagerName>${user.name}</commons.releaseManagerName>
334
- <commons.releaseManagerKey>DEADBEEF</commons.releaseManagerKey>
335
-
336
- <sonar.host.url>https://analysis.apache.org/</sonar.host.url>
337
-
338
- <!-- allow override of changes.announcementFile and directory -->
339
- <changes.announcementDirectory>.</changes.announcementDirectory>
340
- <changes.announcementFile>RELEASE-NOTES.txt</changes.announcementFile>
341
-
342
- </properties>
343
-
344
- <mailingLists>
345
- <!-- N.B. commons-site now uses the Apache POM so has its own copy of the mailing list definitions -->
346
- <!--
347
- Components should normally override the default mailing list report by using the comnand
348
- mvn commons-build:mail-page
349
- This generates the file src/site/xdoc/mail-lists.xml which when processed will replace the PIR version.
350
- -->
351
- <!-- Changes to this list should be synchronised with the commons build plugin -->
352
- <mailingList>
353
- <name>Commons User List</name>
354
- <subscribe>user-subscribe@commons.apache.org</subscribe>
355
- <unsubscribe>user-unsubscribe@commons.apache.org</unsubscribe>
356
- <post>user@commons.apache.org</post>
357
- <archive>https://mail-archives.apache.org/mod_mbox/commons-user/</archive>
358
- <otherArchives>
359
- <otherArchive>https://markmail.org/list/org.apache.commons.users/</otherArchive>
360
- <otherArchive>https://www.mail-archive.com/user@commons.apache.org/</otherArchive>
361
- </otherArchives>
362
- </mailingList>
363
- <mailingList>
364
- <name>Commons Dev List</name>
365
- <subscribe>dev-subscribe@commons.apache.org</subscribe>
366
- <unsubscribe>dev-unsubscribe@commons.apache.org</unsubscribe>
367
- <post>dev@commons.apache.org</post>
368
- <archive>https://mail-archives.apache.org/mod_mbox/commons-dev/</archive>
369
- <otherArchives>
370
- <otherArchive>https://markmail.org/list/org.apache.commons.dev/</otherArchive>
371
- <otherArchive>https://www.mail-archive.com/dev@commons.apache.org/</otherArchive>
372
- </otherArchives>
373
- </mailingList>
374
- <mailingList>
375
- <name>Commons Issues List</name>
376
- <subscribe>issues-subscribe@commons.apache.org</subscribe>
377
- <unsubscribe>issues-unsubscribe@commons.apache.org</unsubscribe>
378
- <archive>https://mail-archives.apache.org/mod_mbox/commons-issues/</archive>
379
- <otherArchives>
380
- <otherArchive>https://markmail.org/list/org.apache.commons.issues/</otherArchive>
381
- <otherArchive>https://www.mail-archive.com/issues@commons.apache.org/</otherArchive>
382
- </otherArchives>
383
- </mailingList>
384
- <mailingList>
385
- <name>Commons Commits List</name>
386
- <subscribe>commits-subscribe@commons.apache.org</subscribe>
387
- <unsubscribe>commits-unsubscribe@commons.apache.org</unsubscribe>
388
- <archive>https://mail-archives.apache.org/mod_mbox/commons-commits/</archive>
389
- <otherArchives>
390
- <otherArchive>https://markmail.org/list/org.apache.commons.commits/</otherArchive>
391
- <otherArchive>https://www.mail-archive.com/commits@commons.apache.org/</otherArchive>
392
- </otherArchives>
393
- </mailingList>
394
- <mailingList>
395
- <name>Apache Announce List</name>
396
- <subscribe>announce-subscribe@apache.org</subscribe>
397
- <unsubscribe>announce-unsubscribe@apache.org</unsubscribe>
398
- <archive>https://mail-archives.apache.org/mod_mbox/www-announce/</archive>
399
- <otherArchives>
400
- <otherArchive>https://markmail.org/list/org.apache.announce/</otherArchive>
401
- <otherArchive>https://www.mail-archive.com/announce@apache.org/</otherArchive>
402
- </otherArchives>
403
- </mailingList>
404
- </mailingLists>
405
-
406
- <!--
407
- This section *must* be overwritten by subprojects. It is only to allow
408
- a release of the commons-parent POM.
409
- -->
410
- <scm>
411
- <connection>scm:git:http://gitbox.apache.org/repos/asf/commons-parent.git</connection>
412
- <developerConnection>scm:git:https://gitbox.apache.org/repos/asf/commons-parent.git</developerConnection>
413
- <url>https://gitbox.apache.org/repos/asf?p=commons-parent.git</url>
414
- </scm>
415
-
416
- <issueManagement>
417
- <system>jira</system>
418
- <url>https://issues.apache.org/jira/browse/COMMONSSITE</url>
419
- </issueManagement>
420
-
421
- <ciManagement>
422
- <system>jenkins</system>
423
- <url>https://builds.apache.org/</url>
424
- </ciManagement>
425
-
426
- <build>
427
- <!-- TODO find a better way to add N&L files to jars and test jars
428
- See also maven-remote-resources-plugin configuration below.
429
- -->
430
- <defaultGoal>clean apache-rat:check package site</defaultGoal>
431
- <resources>
432
- <!-- This is the default setting from the super-pom -->
433
- <resource>
434
- <directory>src/main/resources</directory>
435
- </resource>
436
- <!-- hack to ensure the N&L appear in jars -->
437
- <resource>
438
- <directory>${basedir}</directory>
439
- <targetPath>META-INF</targetPath>
440
- <includes>
441
- <include>NOTICE.txt</include>
442
- <include>LICENSE.txt</include>
443
- <include>NOTICE</include>
444
- <include>LICENSE</include>
445
- </includes>
446
- </resource>
447
- </resources>
448
- <!-- ensure test jars also get NOTICE & LICENSE files -->
449
- <testResources>
450
- <!-- This is the default setting from the super-pom -->
451
- <testResource>
452
- <directory>src/test/resources</directory>
453
- </testResource>
454
- <!-- hack to ensure the N&L appear in jars -->
455
- <testResource>
456
- <directory>${basedir}</directory>
457
- <targetPath>META-INF</targetPath>
458
- <includes>
459
- <include>NOTICE.txt</include>
460
- <include>LICENSE.txt</include>
461
- <include>NOTICE</include>
462
- <include>LICENSE</include>
463
- </includes>
464
- </testResource>
465
- </testResources>
466
- <pluginManagement>
467
- <plugins>
468
- <!-- org.apache.maven.plugins, alpha order by artifact id -->
469
- <plugin>
470
- <groupId>org.apache.maven.plugins</groupId>
471
- <artifactId>maven-compiler-plugin</artifactId>
472
- <version>${commons.compiler.version}</version>
473
- <configuration>
474
- <source>${maven.compiler.source}</source>
475
- <target>${maven.compiler.target}</target>
476
- <encoding>${commons.encoding}</encoding>
477
- <!--
478
- fork is set true by the java-1.x profiles
479
- This allows the use of a different version of the compiler from the
480
- JDK being used to run Maven
481
- -->
482
- <fork>${commons.compiler.fork}</fork>
483
- <!-- the following are only needed if fork is true -->
484
- <compilerVersion>${commons.compiler.compilerVersion}</compilerVersion>
485
- <executable>${commons.compiler.javac}</executable>
486
- </configuration>
487
- </plugin>
488
- <plugin>
489
- <groupId>org.apache.maven.plugins</groupId>
490
- <artifactId>maven-assembly-plugin</artifactId>
491
- <version>${commons.assembly-plugin.version}</version>
492
- </plugin>
493
- <!-- Apache parent includes docck -->
494
- <!-- Apache parent: invoker -->
495
- <plugin>
496
- <groupId>org.apache.maven.plugins</groupId>
497
- <artifactId>maven-javadoc-plugin</artifactId>
498
- <version>${commons.javadoc.version}</version>
499
- <configuration>
500
- <!-- Keep only errors and warnings -->
501
- <quiet>true</quiet>
502
- <source>${maven.compiler.source}</source>
503
- <javadocExecutable>${commons.compiler.javadoc}</javadocExecutable>
504
- <encoding>${commons.encoding}</encoding>
505
- <docencoding>${commons.docEncoding}</docencoding>
506
- <!-- Prevent too many SCM changes -->
507
- <notimestamp>true</notimestamp>
508
- <linksource>true</linksource>
509
- <links>
510
- <link>${commons.javadoc.java.link}</link>
511
- <link>${commons.javadoc.javaee.link}</link>
512
- </links>
513
- <archive>
514
- <manifest>
515
- <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
516
- <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries>
517
- </manifest>
518
- </archive>
519
- </configuration>
520
- </plugin>
521
- <plugin>
522
- <!-- TODO see above - find better way to add N&L files to jars and test jars -->
523
- <groupId>org.apache.maven.plugins</groupId>
524
- <artifactId>maven-remote-resources-plugin</artifactId>
525
- <configuration>
526
- <!--
527
- Apache parent POM automatically adds "LICENSE" and "NOTICE" files
528
- to jars - duplicating the "LICENSE.txt" and "NOTICE.txt"
529
- files that components already have.
530
- -->
531
- <skip>true</skip>
532
- </configuration>
533
- </plugin>
534
- <!-- Apache parent: scm -->
535
- <plugin>
536
- <groupId>org.apache.maven.plugins</groupId>
537
- <artifactId>maven-site-plugin</artifactId>
538
- <version>${commons.site-plugin.version}</version>
539
- <configuration>
540
- <!-- don't deploy site with maven-site-plugin -->
541
- <skipDeploy>true</skipDeploy>
542
- </configuration>
543
- <dependencies>
544
- <dependency>
545
- <!-- add support for ssh/scp -->
546
- <groupId>org.apache.maven.wagon</groupId>
547
- <artifactId>wagon-ssh</artifactId>
548
- <version>${commons.wagon-ssh.version}</version>
549
- </dependency>
550
- </dependencies>
551
- <executions>
552
- <execution>
553
- <id>attach-descriptor</id>
554
- <goals>
555
- <goal>attach-descriptor</goal>
556
- </goals>
557
- </execution>
558
- </executions>
559
- </plugin>
560
- <plugin>
561
- <groupId>org.apache.maven.plugins</groupId>
562
- <artifactId>maven-source-plugin</artifactId>
563
- <version>${commons.source-plugin.version}</version>
564
- <configuration>
565
- <archive>
566
- <manifest>
567
- <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
568
- <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries>
569
- </manifest>
570
- </archive>
571
- </configuration>
572
- </plugin>
573
- <plugin>
574
- <groupId>org.apache.maven.plugins</groupId>
575
- <artifactId>maven-surefire-plugin</artifactId>
576
- <version>${commons.surefire.version}</version>
577
- </plugin>
578
- <plugin>
579
- <groupId>org.apache.maven.plugins</groupId>
580
- <artifactId>maven-failsafe-plugin</artifactId>
581
- <version>${commons.failsafe.version}</version>
582
- </plugin>
583
- <!-- Other plugins, alpha order by groupId and artifactId -->
584
- <plugin>
585
- <groupId>com.github.siom79.japicmp</groupId>
586
- <artifactId>japicmp-maven-plugin</artifactId>
587
- <version>${commons.japicmp.version}</version>
588
- <configuration>
589
- <oldVersion>
590
- <dependency>
591
- <groupId>${project.groupId}</groupId>
592
- <artifactId>${project.artifactId}</artifactId>
593
- <version>${commons.bc.version}</version>
594
- <type>jar</type>
595
- </dependency>
596
- </oldVersion>
597
- <newVersion>
598
- <file>
599
- <path>${project.build.directory}/${project.artifactId}-${project.version}.jar</path>
600
- </file>
601
- </newVersion>
602
- <parameter>
603
- <onlyModified>true</onlyModified>
604
- <breakBuildOnBinaryIncompatibleModifications>${commons.japicmp.breakBuildOnBinaryIncompatibleModifications}</breakBuildOnBinaryIncompatibleModifications>
605
- <breakBuildOnSourceIncompatibleModifications>${commons.japicmp.breakBuildOnSourceIncompatibleModifications}</breakBuildOnSourceIncompatibleModifications>
606
- <!-- skip japicmp on "mvn site" - use "mvn package site" to include report -->
607
- <ignoreMissingNewVersion>true</ignoreMissingNewVersion>
608
- <reportOnlyFilename>true</reportOnlyFilename>
609
- <skipPomModules>true</skipPomModules>
610
- <ignoreMissingClasses>${commons.japicmp.ignoreMissingClasses}</ignoreMissingClasses>
611
- <overrideCompatibilityChangeParameters>
612
- <overrideCompatibilityChangeParameter>
613
- <compatibilityChange>METHOD_NEW_DEFAULT</compatibilityChange>
614
- <binaryCompatible>true</binaryCompatible>
615
- <sourceCompatible>true</sourceCompatible>
616
- <semanticVersionLevel>PATCH</semanticVersionLevel>
617
- </overrideCompatibilityChangeParameter>
618
- </overrideCompatibilityChangeParameters>
619
- </parameter>
620
- </configuration>
621
- </plugin>
622
- <plugin>
623
- <groupId>org.apache.commons</groupId>
624
- <artifactId>commons-build-plugin</artifactId>
625
- <version>${commons.build-plugin.version}</version>
626
- <configuration>
627
- <commons.release.name>${commons.release.name}</commons.release.name>
628
- </configuration>
629
- </plugin>
630
- <plugin>
631
- <groupId>org.apache.commons</groupId>
632
- <artifactId>commons-release-plugin</artifactId>
633
- <version>${commons.release-plugin.version}</version>
634
- </plugin>
635
- <plugin>
636
- <groupId>org.apache.felix</groupId>
637
- <artifactId>maven-bundle-plugin</artifactId>
638
- <version>${commons.felix.version}</version>
639
- <inherited>true</inherited>
640
- <dependencies>
641
- <dependency>
642
- <!-- Fixes https://github.com/bndtools/bnd/issues/3903 seen with Commons CSV. -->
643
- <groupId>biz.aQute.bnd</groupId>
644
- <artifactId>biz.aQute.bndlib</artifactId>
645
- <version>${commons.biz.aQute.bndlib.version}</version>
646
- </dependency>
647
- </dependencies>
648
- </plugin>
649
- <plugin>
650
- <groupId>org.apache.rat</groupId>
651
- <artifactId>apache-rat-plugin</artifactId>
652
- <version>${commons.rat.version}</version>
653
- </plugin>
654
- <plugin>
655
- <groupId>org.codehaus.mojo</groupId>
656
- <artifactId>build-helper-maven-plugin</artifactId>
657
- <version>${commons.build-helper.version}</version>
658
- </plugin>
659
- <plugin>
660
- <groupId>org.codehaus.mojo</groupId>
661
- <artifactId>buildnumber-maven-plugin</artifactId>
662
- <version>${commons.buildnumber-plugin.version}</version>
663
- </plugin>
664
- <plugin>
665
- <groupId>org.codehaus.mojo</groupId>
666
- <artifactId>clirr-maven-plugin</artifactId>
667
- <version>${commons.clirr.version}</version>
668
- <configuration>
669
- <minSeverity>${minSeverity}</minSeverity>
670
- </configuration>
671
- </plugin>
672
- <plugin>
673
- <groupId>org.codehaus.mojo</groupId>
674
- <artifactId>versions-maven-plugin</artifactId>
675
- <!-- Version 2.2 causes an NPE with Maven 3.3.9 -->
676
- <version>2.11.0</version>
677
- </plugin>
678
- <plugin>
679
- <groupId>org.jacoco</groupId>
680
- <artifactId>jacoco-maven-plugin</artifactId>
681
- <version>${commons.jacoco.version}</version>
682
- <!-- Note that since JaCoCo relies on an agent to perform tests,
683
- it changes the surefire arguments line. If a component also
684
- needs to change the argument line of maven-surefire-plugin,
685
- then it must add ${argLine} property (which is set by JaCoCo)
686
- in the argLine configuration element of maven-surefire-plugin
687
- to preserve JaCoCo settings. -->
688
- <executions>
689
- <execution>
690
- <id>prepare-agent</id>
691
- <phase>process-test-classes</phase>
692
- <goals>
693
- <goal>prepare-agent</goal>
694
- </goals>
695
- </execution>
696
- <execution>
697
- <id>report</id>
698
- <phase>site</phase>
699
- <goals>
700
- <goal>report</goal>
701
- </goals>
702
- </execution>
703
- <execution>
704
- <id>check</id>
705
- <goals>
706
- <goal>check</goal>
707
- </goals>
708
- <configuration>
709
- <rules>
710
- <rule>
711
- <element>BUNDLE</element>
712
- <limits>
713
- <limit>
714
- <counter>CLASS</counter>
715
- <value>COVEREDRATIO</value>
716
- <minimum>${commons.jacoco.classRatio}</minimum>
717
- </limit>
718
- <limit>
719
- <counter>INSTRUCTION</counter>
720
- <value>COVEREDRATIO</value>
721
- <minimum>${commons.jacoco.instructionRatio}</minimum>
722
- </limit>
723
- <limit>
724
- <counter>METHOD</counter>
725
- <value>COVEREDRATIO</value>
726
- <minimum>${commons.jacoco.methodRatio}</minimum>
727
- </limit>
728
- <limit>
729
- <counter>BRANCH</counter>
730
- <value>COVEREDRATIO</value>
731
- <minimum>${commons.jacoco.branchRatio}</minimum>
732
- </limit>
733
- <limit>
734
- <counter>LINE</counter>
735
- <value>COVEREDRATIO</value>
736
- <minimum>${commons.jacoco.lineRatio}</minimum>
737
- </limit>
738
- <limit>
739
- <counter>COMPLEXITY</counter>
740
- <value>COVEREDRATIO</value>
741
- <minimum>${commons.jacoco.complexityRatio}</minimum>
742
- </limit>
743
- </limits>
744
- </rule>
745
- </rules>
746
- <haltOnFailure>${commons.jacoco.haltOnFailure}</haltOnFailure>
747
- </configuration>
748
- </execution>
749
- </executions>
750
- </plugin>
751
- <plugin>
752
- <groupId>org.apache.maven.plugins</groupId>
753
- <artifactId>maven-project-info-reports-plugin</artifactId>
754
- <version>${commons.project-info.version}</version>
755
- <dependencies>
756
- <!-- Fix org.apache.bcel.classfile.ClassFormatException: Invalid byte tag in constant pool: 19 -->
757
- <dependency>
758
- <groupId>org.apache.bcel</groupId>
759
- <artifactId>bcel</artifactId>
760
- <version>6.5.0</version>
761
- </dependency>
762
- </dependencies>
763
- </plugin>
764
- <plugin>
765
- <groupId>org.apache.maven.plugins</groupId>
766
- <artifactId>maven-checkstyle-plugin</artifactId>
767
- <version>${commons.checkstyle-plugin.version}</version>
768
- <dependencies>
769
- <dependency>
770
- <groupId>com.puppycrawl.tools</groupId>
771
- <artifactId>checkstyle</artifactId>
772
- <version>${commons.checkstyle.version}</version>
773
- </dependency>
774
- </dependencies>
775
- </plugin>
776
- <plugin>
777
- <groupId>com.github.spotbugs</groupId>
778
- <artifactId>spotbugs-maven-plugin</artifactId>
779
- <version>${commons.spotbugs.plugin.version}</version>
780
- <dependencies>
781
- <dependency>
782
- <groupId>com.github.spotbugs</groupId>
783
- <artifactId>spotbugs</artifactId>
784
- <version>${commons.spotbugs.impl.version}</version>
785
- </dependency>
786
- </dependencies>
787
- </plugin>
788
- <plugin>
789
- <groupId>org.apache.maven.plugins</groupId>
790
- <artifactId>maven-pmd-plugin</artifactId>
791
- <version>${commons.pmd.version}</version>
792
- <dependencies>
793
- <dependency>
794
- <groupId>net.sourceforge.pmd</groupId>
795
- <artifactId>pmd-core</artifactId>
796
- <version>${commons.pmd-impl.version}</version>
797
- </dependency>
798
- <dependency>
799
- <groupId>net.sourceforge.pmd</groupId>
800
- <artifactId>pmd-java</artifactId>
801
- <version>${commons.pmd-impl.version}</version>
802
- </dependency>
803
- <dependency>
804
- <groupId>net.sourceforge.pmd</groupId>
805
- <artifactId>pmd-javascript</artifactId>
806
- <version>${commons.pmd-impl.version}</version>
807
- </dependency>
808
- <dependency>
809
- <groupId>net.sourceforge.pmd</groupId>
810
- <artifactId>pmd-jsp</artifactId>
811
- <version>${commons.pmd-impl.version}</version>
812
- </dependency>
813
- </dependencies>
814
- </plugin>
815
- </plugins>
816
- </pluginManagement>
817
- <plugins>
818
- <!-- org.apache.maven.plugins, alpha order by artifact id -->
819
- <plugin>
820
- <!-- Parent POM is released, so needs source archive for ASF mirrors -->
821
- <artifactId>maven-assembly-plugin</artifactId>
822
- <configuration>
823
- <descriptors>
824
- <descriptor>src/assembly/src.xml</descriptor>
825
- </descriptors>
826
- <tarLongFileMode>gnu</tarLongFileMode>
827
- </configuration>
828
- </plugin>
829
- <plugin>
830
- <!--
831
- - Copy LICENSE.txt and NOTICE.txt so that they are included
832
- - in the -javadoc jar file for the component.
833
- -->
834
- <groupId>org.apache.maven.plugins</groupId>
835
- <artifactId>maven-antrun-plugin</artifactId>
836
- <executions>
837
- <execution>
838
- <id>javadoc.resources</id>
839
- <phase>generate-sources</phase>
840
- <goals>
841
- <goal>run</goal>
842
- </goals>
843
- <configuration>
844
- <target>
845
- <copy todir="${project.build.directory}/apidocs/META-INF">
846
- <fileset dir="${basedir}">
847
- <include name="LICENSE.txt" />
848
- <include name="NOTICE.txt" />
849
- <include name="LICENSE" />
850
- <include name="NOTICE" />
851
- </fileset>
852
- </copy>
853
- </target>
854
- </configuration>
855
- </execution>
856
- </executions>
857
- </plugin>
858
- <plugin>
859
- <groupId>org.apache.maven.plugins</groupId>
860
- <artifactId>maven-compiler-plugin</artifactId>
861
- </plugin>
862
- <!-- Unfortunately the much simpler
863
- <prerequisites><maven>3.0</maven></prerequisites>
864
- is not inherited so we have to use the enforcer plugin
865
- -->
866
- <plugin>
867
- <inherited>true</inherited>
868
- <groupId>org.apache.maven.plugins</groupId>
869
- <artifactId>maven-enforcer-plugin</artifactId>
870
- <version>${commons.enforcer-plugin.version}</version>
871
- <configuration>
872
- <rules>
873
- <requireMavenVersion>
874
- <version>3.5.0</version>
875
- </requireMavenVersion>
876
- <requireJavaVersion>
877
- <version>${maven.compiler.target}</version>
878
- </requireJavaVersion>
879
- </rules>
880
- <fail>true</fail>
881
- </configuration>
882
- <executions>
883
- <execution>
884
- <id>enforce-maven-3</id>
885
- <goals>
886
- <goal>enforce</goal>
887
- </goals>
888
- </execution>
889
- </executions>
890
- </plugin>
891
- <plugin>
892
- <groupId>org.apache.maven.plugins</groupId>
893
- <artifactId>maven-jar-plugin</artifactId>
894
- <version>${commons.jar-plugin.version}</version>
895
- <executions>
896
- <execution>
897
- <goals>
898
- <goal>test-jar</goal>
899
- </goals>
900
- <configuration>
901
- <!-- Avoids an error when releasing the parent pom -->
902
- <skipIfEmpty>true</skipIfEmpty>
903
- </configuration>
904
- </execution>
905
- </executions>
906
- <configuration>
907
- <archive>
908
- <manifestFile>${commons.manifestfile}</manifestFile>
909
- <manifestEntries>
910
- <Specification-Title>${project.name}</Specification-Title>
911
- <Specification-Version>${project.version}</Specification-Version>
912
- <Specification-Vendor>${project.organization.name}</Specification-Vendor>
913
- <Implementation-Title>${project.name}</Implementation-Title>
914
- <Implementation-Version>${project.version}</Implementation-Version>
915
- <Implementation-Vendor>${project.organization.name}</Implementation-Vendor>
916
- <Implementation-Vendor-Id>org.apache</Implementation-Vendor-Id>
917
- <Implementation-Build>${implementation.build}</Implementation-Build>
918
- <X-Compile-Source-JDK>${maven.compiler.source}</X-Compile-Source-JDK>
919
- <X-Compile-Target-JDK>${maven.compiler.target}</X-Compile-Target-JDK>
920
- </manifestEntries>
921
- </archive>
922
- </configuration>
923
- </plugin>
924
- <plugin>
925
- <artifactId>maven-source-plugin</artifactId>
926
- <executions>
927
- <execution>
928
- <id>create-source-jar</id>
929
- <goals>
930
- <goal>jar-no-fork</goal>
931
- <goal>test-jar-no-fork</goal>
932
- </goals>
933
- </execution>
934
- </executions>
935
- </plugin>
936
- <plugin>
937
- <groupId>org.apache.maven.plugins</groupId>
938
- <artifactId>maven-surefire-plugin</artifactId>
939
- <configuration>
940
- <!--
941
- commons.surefire.java is normally empty.
942
- It is defined by the java-1.x profiles to change the JVM used by Surefire
943
- -->
944
- <jvm>${commons.surefire.java}</jvm>
945
- </configuration>
946
- </plugin>
947
- <!-- Other plugins, alpha order by groupId and artifactId -->
948
- <plugin>
949
- <groupId>org.apache.commons</groupId>
950
- <artifactId>commons-build-plugin</artifactId>
951
- </plugin>
952
- <plugin>
953
- <groupId>org.apache.felix</groupId>
954
- <artifactId>maven-bundle-plugin</artifactId>
955
- <configuration>
956
- <!--
957
- dummy entry to stop bundle plugin from picking up jar config and reporting
958
- WARNING: Duplicate name in Manifest
959
- See http://markmail.org/message/mpkl24wk3jrjhhjg
960
- -->
961
- <archive>
962
- <forced>true</forced>
963
- </archive>
964
- <excludeDependencies>${commons.osgi.excludeDependencies}</excludeDependencies>
965
- <manifestLocation>${project.build.directory}/osgi</manifestLocation>
966
- <instructions>
967
- <!-- stops the "uses" clauses being added to "Export-Package" manifest entry -->
968
- <_nouses>true</_nouses>
969
- <!-- Stop the JAVA_1_n_HOME variables from being treated as headers by Bnd -->
970
- <_removeheaders>JAVA_1_3_HOME,JAVA_1_4_HOME,JAVA_1_5_HOME,JAVA_1_6_HOME,JAVA_1_7_HOME,JAVA_1_8_HOME,JAVA_1_9_HOME</_removeheaders>
971
- <Bundle-SymbolicName>${commons.osgi.symbolicName}</Bundle-SymbolicName>
972
- <Export-Package>${commons.osgi.export}</Export-Package>
973
- <Private-Package>${commons.osgi.private}</Private-Package>
974
- <Import-Package>${commons.osgi.import}</Import-Package>
975
- <DynamicImport-Package>${commons.osgi.dynamicImport}</DynamicImport-Package>
976
- <Bundle-DocURL>${project.url}</Bundle-DocURL>
977
- </instructions>
978
- </configuration>
979
- <executions>
980
- <execution>
981
- <id>bundle-manifest</id>
982
- <phase>process-classes</phase>
983
- <goals>
984
- <goal>manifest</goal>
985
- </goals>
986
- </execution>
987
- </executions>
988
- </plugin>
989
- <!-- Needed for command-line access, e.g mvn apache-rat:rat and mvn apache-rat:check -->
990
- <plugin>
991
- <groupId>org.apache.rat</groupId>
992
- <artifactId>apache-rat-plugin</artifactId>
993
- <!-- Should agree with config in reporting section -->
994
- <configuration>
995
- <!--
996
- If you wish to override this list in the component (child) pom, ensure you use
997
- <excludes combine.children="merge">
998
- so that the child pom entries replace the parent entries
999
- -->
1000
- <excludes combine.children="append">
1001
- <exclude>site-content/**</exclude>
1002
- <exclude>.checkstyle</exclude>
1003
- <exclude>.fbprefs</exclude>
1004
- <exclude>.pmd</exclude>
1005
- <exclude>.asf.yaml</exclude>
1006
- <exclude>src/site/resources/download_*.cgi</exclude>
1007
- <exclude>src/site/resources/profile.*</exclude>
1008
- <exclude>profile.*</exclude>
1009
- <!-- Exclude Eclipse local files and folders -->
1010
- <exclude>maven-eclipse.xml</exclude>
1011
- <exclude>.externalToolBuilders/**</exclude>
1012
- <!-- Visual Studio code files -->
1013
- <exclude>.vscode/**</exclude>
1014
- </excludes>
1015
- </configuration>
1016
- <executions>
1017
- <execution>
1018
- <id>rat-check</id>
1019
- <phase>validate</phase>
1020
- <goals>
1021
- <goal>check</goal>
1022
- </goals>
1023
- </execution>
1024
- </executions>
1025
- </plugin>
1026
-
1027
- <plugin>
1028
- <groupId>org.apache.maven.plugins</groupId>
1029
- <artifactId>maven-scm-publish-plugin</artifactId>
1030
- <configuration>
1031
- <content>${project.reporting.outputDirectory}</content>
1032
- <pubScmUrl>scm:svn:${commons.scmPubUrl}</pubScmUrl>
1033
- <checkoutDirectory>${commons.scmPubCheckoutDirectory}</checkoutDirectory>
1034
- <serverId>${commons.scmPubServer}</serverId>
1035
- <tryUpdate>true</tryUpdate>
1036
- </configuration>
1037
- <executions>
1038
- <execution>
1039
- <id>scm-publish</id>
1040
- <phase>site-deploy</phase><!-- deploy site with maven-scm-publish-plugin -->
1041
- <goals>
1042
- <goal>publish-scm</goal>
1043
- </goals>
1044
- </execution>
1045
- </executions>
1046
- </plugin>
1047
- <plugin>
1048
- <groupId>org.codehaus.mojo</groupId>
1049
- <artifactId>versions-maven-plugin</artifactId>
1050
- </plugin>
1051
- </plugins>
1052
- </build>
1053
-
1054
- <reporting>
1055
- <!-- N.B. plugins defined here in the <reporting> section ignore what's defined in <pluginManagement>
1056
- in the <build> section above, so we have to define the versions here. -->
1057
- <plugins>
1058
- <!-- org.apache.maven.plugins, alpha order by artifact id -->
1059
- <plugin>
1060
- <groupId>org.apache.maven.plugins</groupId>
1061
- <artifactId>maven-changes-plugin</artifactId>
1062
- <version>${commons.changes.version}</version>
1063
- <configuration>
1064
- <xmlPath>${basedir}/src/changes/changes.xml</xmlPath>
1065
- <columnNames>Fix Version,Key,Component,Summary,Type,Resolution,Status</columnNames>
1066
- <!-- Sort cols in natural order when using JQL for JIRA 5.1 -->
1067
- <sortColumnNames>Fix Version DESC,Type,Key DESC</sortColumnNames>
1068
- <resolutionIds>Fixed</resolutionIds>
1069
- <statusIds>Resolved,Closed</statusIds>
1070
- <!-- Don't include sub-task -->
1071
- <typeIds>Bug,New Feature,Task,Improvement,Wish,Test</typeIds>
1072
- <!-- For JIRA >= 5.1 -->
1073
- <useJql>true</useJql>
1074
- <onlyCurrentVersion>${commons.changes.onlyCurrentVersion}</onlyCurrentVersion>
1075
- <maxEntries>${commons.changes.maxEntries}</maxEntries>
1076
- <runOnlyAtExecutionRoot>${commons.changes.runOnlyAtExecutionRoot}</runOnlyAtExecutionRoot>
1077
- </configuration>
1078
- <reportSets>
1079
- <reportSet>
1080
- <reports>
1081
- <report>changes-report</report>
1082
- <report>jira-report</report>
1083
- </reports>
1084
- </reportSet>
1085
- </reportSets>
1086
- </plugin>
1087
- <plugin>
1088
- <groupId>org.apache.maven.plugins</groupId>
1089
- <artifactId>maven-javadoc-plugin</artifactId>
1090
- <version>${commons.javadoc.version}</version>
1091
- <!-- Suppress test Javadocs -->
1092
- <reportSets>
1093
- <reportSet>
1094
- <id>default</id>
1095
- <reports>
1096
- <report>javadoc</report>
1097
- </reports>
1098
- </reportSet>
1099
- </reportSets>
1100
- </plugin>
1101
- <plugin>
1102
- <groupId>org.apache.maven.plugins</groupId>
1103
- <artifactId>maven-jxr-plugin</artifactId>
1104
- <version>${commons.jxr.version}</version>
1105
- </plugin>
1106
- <plugin>
1107
- <groupId>org.apache.maven.plugins</groupId>
1108
- <artifactId>maven-project-info-reports-plugin</artifactId>
1109
- <version>${commons.project-info.version}</version>
1110
- <!--
1111
- Unfortunately it does not appear to be possible to override
1112
- reports configured in a parent POM.
1113
- See https://issues.apache.org/jira/browse/MPIR-241
1114
- and https://issues.apache.org/jira/browse/MPOM-32
1115
- So we define here all those reports that are suitable for
1116
- all components.
1117
- Components can add extra reports if they wish, but cannot disable any.
1118
- -->
1119
- <reportSets>
1120
- <reportSet>
1121
- <reports>
1122
- <report>index</report>
1123
- <report>summary</report>
1124
- <report>modules</report>
1125
- <!-- <report>license</report> site must link to ASF page instead -->
1126
- <report>team</report>
1127
- <report>scm</report>
1128
- <report>issue-management</report>
1129
- <report>mailing-lists</report>
1130
- <report>dependency-info</report>
1131
- <report>dependency-management</report>
1132
- <report>dependencies</report>
1133
- <report>dependency-convergence</report>
1134
- <report>ci-management</report>
1135
- <!-- <report>plugin-management</report> not very useful for end users -->
1136
- <!-- <report>plugins</report> not very useful for end users -->
1137
- <report>distribution-management</report>
1138
- </reports>
1139
- </reportSet>
1140
- </reportSets>
1141
- </plugin>
1142
- <plugin>
1143
- <groupId>org.apache.maven.plugins</groupId>
1144
- <artifactId>maven-site-plugin</artifactId>
1145
- <version>${commons.site-plugin.version}</version>
1146
- <configuration>
1147
- <!-- Exclude the navigation file for Maven 1 sites
1148
- and the changes file used by the changes-plugin,
1149
- as they interfere with the site generation. -->
1150
- <moduleExcludes>
1151
- <xdoc>navigation.xml,changes.xml</xdoc>
1152
- </moduleExcludes>
1153
- </configuration>
1154
- </plugin>
1155
- <plugin>
1156
- <groupId>org.apache.maven.plugins</groupId>
1157
- <artifactId>maven-surefire-report-plugin</artifactId>
1158
- <version>${commons.surefire-report.version}</version>
1159
- <configuration>
1160
- <aggregate>${commons.surefire-report.aggregate}</aggregate>
1161
- </configuration>
1162
- </plugin>
1163
- <!-- Other plugins, alpha order by groupId and artifactId -->
1164
- <plugin>
1165
- <groupId>org.apache.rat</groupId>
1166
- <artifactId>apache-rat-plugin</artifactId>
1167
- <version>${commons.rat.version}</version>
1168
- <!-- Should agree with config in build section -->
1169
- <configuration>
1170
- <!--
1171
- If you wish to override this list in the component (child) pom, ensure you use
1172
- <excludes combine.children="merge">
1173
- so that the child pom entries replace the parent entries
1174
- -->
1175
- <excludes combine.children="append">
1176
- <exclude>site-content/**</exclude>
1177
- <exclude>.checkstyle</exclude>
1178
- <exclude>.fbprefs</exclude>
1179
- <exclude>.pmd</exclude>
1180
- <exclude>.asf.yaml</exclude>
1181
- <exclude>src/site/resources/download_*.cgi</exclude>
1182
- <exclude>src/site/resources/profile.*</exclude>
1183
- <exclude>profile.*</exclude>
1184
- <!-- Exclude Eclipse local files and folders -->
1185
- <exclude>maven-eclipse.xml</exclude>
1186
- <exclude>.externalToolBuilders/**</exclude>
1187
- <!-- Visual Studio code files -->
1188
- <exclude>.vscode/**</exclude>
1189
- </excludes>
1190
- </configuration>
1191
- </plugin>
1192
- </plugins>
1193
- </reporting>
1194
-
1195
- <profiles>
1196
- <profile>
1197
- <id>svn</id>
1198
- <activation>
1199
- <file>
1200
- <exists>.svn</exists>
1201
- </file>
1202
- </activation>
1203
- <build>
1204
- <plugins>
1205
- <plugin>
1206
- <groupId>org.codehaus.mojo</groupId>
1207
- <artifactId>buildnumber-maven-plugin</artifactId>
1208
- <executions>
1209
- <execution>
1210
- <phase>validate</phase>
1211
- <goals>
1212
- <goal>create</goal>
1213
- </goals>
1214
- </execution>
1215
- </executions>
1216
- <configuration>
1217
- <!-- Use committed revision so it does not change every time svn update is run -->
1218
- <useLastCommittedRevision>true</useLastCommittedRevision>
1219
- <!-- default revision number if unavailable -->
1220
- <revisionOnScmFailure>??????</revisionOnScmFailure>
1221
- <!-- svnjava works even if an svn command-line client is not on the path -->
1222
- <providerImplementations>
1223
- <svn>javasvn</svn>
1224
- </providerImplementations>
1225
- </configuration>
1226
- </plugin>
1227
- </plugins>
1228
- </build>
1229
- </profile>
1230
-
1231
- <profile>
1232
- <!--
1233
- Add an automatic module name to the manifest if the file
1234
- 'profile.module-name' exists. The name must be provided in the property
1235
- 'commons.module.name'.
1236
- -->
1237
- <id>module-name</id>
1238
- <activation>
1239
- <file>
1240
- <exists>profile.module-name</exists>
1241
- </file>
1242
- </activation>
1243
- <build>
1244
- <plugins>
1245
- <plugin>
1246
- <groupId>org.apache.maven.plugins</groupId>
1247
- <artifactId>maven-jar-plugin</artifactId>
1248
- <configuration>
1249
- <archive combine.children="append">
1250
- <manifestEntries>
1251
- <Automatic-Module-Name>${commons.module.name}</Automatic-Module-Name>
1252
- </manifestEntries>
1253
- </archive>
1254
- </configuration>
1255
- </plugin>
1256
- </plugins>
1257
- </build>
1258
- </profile>
1259
-
1260
- <profile>
1261
- <!--
1262
- Make the version parts of the maven.compiler.target property
1263
- available as separate properties, so that they can be used to define
1264
- the java signature artifactId used by animal-sniffer etc.
1265
- -->
1266
- <id>parse-target-version</id>
1267
- <activation>
1268
- <property>
1269
- <!--
1270
- This property should always be defined.
1271
- The intention is to ensure that the profile is always enabled.
1272
- (activeByDefault only applies if other profiles are not enabled)
1273
- -->
1274
- <name>user.home</name>
1275
- </property>
1276
- </activation>
1277
- <build>
1278
- <plugins>
1279
- <plugin>
1280
- <groupId>org.codehaus.mojo</groupId>
1281
- <artifactId>build-helper-maven-plugin</artifactId>
1282
- <executions>
1283
- <execution>
1284
- <id>parse-version</id>
1285
- <!-- default is: <phase>validate</phase> -->
1286
- <goals>
1287
- <goal>parse-version</goal>
1288
- </goals>
1289
- <configuration>
1290
- <propertyPrefix>javaTarget</propertyPrefix>
1291
- <versionString>${maven.compiler.target}</versionString>
1292
- </configuration>
1293
- </execution>
1294
- </executions>
1295
- </plugin>
1296
- </plugins>
1297
- </build>
1298
- </profile>
1299
-
1300
- <!--
1301
- Runs the Animal Sniffer plugin to check that generated code does not included references
1302
- to methods/classes etc that are not present in the standard Java runtime for the defined target version.
1303
- To bypass the checks, define "animal.sniffer.skip" as true, or create the file "src/site/resources/profile.noanimal"
1304
- -->
1305
-
1306
- <profile>
1307
- <id>animal-sniffer</id>
1308
- <activation>
1309
- <!-- active unless the file is found -->
1310
- <file>
1311
- <missing>src/site/resources/profile.noanimal</missing>
1312
- </file>
1313
- </activation>
1314
-
1315
- <properties>
1316
- <!-- define this as a property to allow command-line override -->
1317
- <animal-sniffer.signature>java${javaTarget.majorVersion}${javaTarget.minorVersion}</animal-sniffer.signature>
1318
- </properties>
1319
-
1320
- <build>
1321
- <plugins>
1322
-
1323
- <!-- Run the Animal Sniffer checks -->
1324
- <plugin>
1325
- <groupId>org.codehaus.mojo</groupId>
1326
- <artifactId>animal-sniffer-maven-plugin</artifactId>
1327
- <version>${commons.animal-sniffer.version}</version>
1328
- <executions>
1329
- <execution>
1330
- <id>checkAPIcompatibility</id>
1331
- <!-- default is: <phase>process-classes</phase> -->
1332
- <!-- Note: if the plugin is ever enhanced to check test classes
1333
- it will presumably need to be bound to process-test-classes instead
1334
- -->
1335
- <goals>
1336
- <goal>check</goal>
1337
- </goals>
1338
- </execution>
1339
- </executions>
1340
- <configuration>
1341
- <signature>
1342
- <groupId>org.codehaus.mojo.signature</groupId>
1343
- <artifactId>${animal-sniffer.signature}</artifactId>
1344
- <version>${commons.animal-sniffer.signature.version}</version>
1345
- </signature>
1346
- </configuration>
1347
- </plugin>
1348
-
1349
- </plugins>
1350
- </build>
1351
- </profile>
1352
-
1353
- <profile>
1354
- <id>jacoco</id>
1355
- <activation>
1356
- <!--
1357
- N.B. in spite of what the Maven docs may say,
1358
- activation conditions are ORed together, see:
1359
- https://issues.apache.org/jira/browse/MNG-4565
1360
- Fairly useless, but that's what was done in
1361
- https://issues.apache.org/jira/browse/MNG-3106
1362
-
1363
- So we cannot also check for Java 1.5+
1364
- This should not be a problem now as the profile is optional.
1365
- Components that still target Java 1.4 or earlier
1366
- just need to ensure they don't use JaCoCo by default.
1367
- -->
1368
- <file>
1369
- <exists>src/site/resources/profile.jacoco</exists>
1370
- </file>
1371
- </activation>
1372
- <build>
1373
- <plugins>
1374
- <plugin>
1375
- <groupId>org.jacoco</groupId>
1376
- <artifactId>jacoco-maven-plugin</artifactId>
1377
- <version>${commons.jacoco.version}</version>
1378
- </plugin>
1379
- </plugins>
1380
- </build>
1381
- <reporting>
1382
- <plugins>
1383
- <plugin>
1384
- <groupId>org.jacoco</groupId>
1385
- <artifactId>jacoco-maven-plugin</artifactId>
1386
- <version>${commons.jacoco.version}</version>
1387
- <reportSets>
1388
- <reportSet>
1389
- <reports>
1390
- <!-- select non-aggregate reports -->
1391
- <report>report</report>
1392
- </reports>
1393
- </reportSet>
1394
- </reportSets>
1395
- </plugin>
1396
- </plugins>
1397
- </reporting>
1398
- </profile>
1399
-
1400
- <profile>
1401
- <id>cobertura</id>
1402
- <activation>
1403
- <file>
1404
- <exists>src/site/resources/profile.cobertura</exists>
1405
- </file>
1406
- </activation>
1407
- <reporting>
1408
- <plugins>
1409
- <plugin>
1410
- <groupId>org.codehaus.mojo</groupId>
1411
- <artifactId>cobertura-maven-plugin</artifactId>
1412
- <version>${commons.cobertura.version}</version>
1413
- </plugin>
1414
- </plugins>
1415
- </reporting>
1416
- </profile>
1417
-
1418
- <profile>
1419
- <id>clirr</id>
1420
- <activation>
1421
- <file>
1422
- <exists>src/site/resources/profile.clirr</exists>
1423
- </file>
1424
- </activation>
1425
- <reporting>
1426
- <plugins>
1427
- <plugin>
1428
- <groupId>org.codehaus.mojo</groupId>
1429
- <artifactId>clirr-maven-plugin</artifactId>
1430
- <version>${commons.clirr.version}</version>
1431
- </plugin>
1432
- </plugins>
1433
- </reporting>
1434
- </profile>
1435
-
1436
- <!-- alternative to clirr, will fail build if binary compatibility is broken -->
1437
- <profile>
1438
- <id>japicmp</id>
1439
- <activation>
1440
- <jdk>[1.8,)</jdk>
1441
- <file>
1442
- <exists>src/site/resources/profile.japicmp</exists>
1443
- </file>
1444
- </activation>
1445
- <build>
1446
- <plugins>
1447
- <plugin>
1448
- <groupId>com.github.siom79.japicmp</groupId>
1449
- <artifactId>japicmp-maven-plugin</artifactId>
1450
- <executions>
1451
- <execution>
1452
- <phase>verify</phase>
1453
- <goals>
1454
- <goal>cmp</goal>
1455
- </goals>
1456
- </execution>
1457
- </executions>
1458
- </plugin>
1459
- </plugins>
1460
- </build>
1461
- <reporting>
1462
- <plugins>
1463
- <plugin>
1464
- <groupId>com.github.siom79.japicmp</groupId>
1465
- <artifactId>japicmp-maven-plugin</artifactId>
1466
- <version>${commons.japicmp.version}</version>
1467
- <configuration>
1468
- <parameter>
1469
- <onlyModified>true</onlyModified>
1470
- <breakBuildOnBinaryIncompatibleModifications>${commons.japicmp.breakBuildOnBinaryIncompatibleModifications}</breakBuildOnBinaryIncompatibleModifications>
1471
- <breakBuildOnSourceIncompatibleModifications>${commons.japicmp.breakBuildOnSourceIncompatibleModifications}</breakBuildOnSourceIncompatibleModifications>
1472
- <!-- skip japicmp on "mvn site" - use "mvn package site" to include report -->
1473
- <ignoreMissingNewVersion>true</ignoreMissingNewVersion>
1474
- <reportOnlyFilename>true</reportOnlyFilename>
1475
- <skipPomModules>true</skipPomModules>
1476
- <ignoreMissingClasses>${commons.japicmp.ignoreMissingClasses}</ignoreMissingClasses>
1477
- <overrideCompatibilityChangeParameters>
1478
- <overrideCompatibilityChangeParameter>
1479
- <compatibilityChange>METHOD_NEW_DEFAULT</compatibilityChange>
1480
- <binaryCompatible>true</binaryCompatible>
1481
- <sourceCompatible>true</sourceCompatible>
1482
- <semanticVersionLevel>PATCH</semanticVersionLevel>
1483
- </overrideCompatibilityChangeParameter>
1484
- </overrideCompatibilityChangeParameters>
1485
- </parameter>
1486
- </configuration>
1487
- </plugin>
1488
- </plugins>
1489
- </reporting>
1490
- </profile>
1491
-
1492
- <!--
1493
- Profile for Commons releases via Nexus.
1494
- Assembles artifacts, creates source and javadoc jars, signs them and adds hashes.
1495
- -->
1496
- <profile>
1497
- <id>release</id>
1498
- <build>
1499
- <plugins>
1500
- <plugin>
1501
- <artifactId>maven-install-plugin</artifactId>
1502
- <configuration>
1503
- <createChecksum>true</createChecksum>
1504
- </configuration>
1505
- </plugin>
1506
- <plugin>
1507
- <artifactId>maven-release-plugin</artifactId>
1508
- <configuration>
1509
- <!-- Pass these arguments to the deploy plugin. -->
1510
- <arguments>-Prelease</arguments>
1511
- </configuration>
1512
- </plugin>
1513
- <plugin>
1514
- <artifactId>maven-javadoc-plugin</artifactId>
1515
- <executions>
1516
- <execution>
1517
- <id>create-javadoc-jar</id>
1518
- <goals>
1519
- <goal>javadoc</goal>
1520
- <goal>jar</goal>
1521
- </goals>
1522
- <phase>package</phase>
1523
- </execution>
1524
- </executions>
1525
- <configuration>
1526
- <source>${maven.compiler.source}</source>
1527
- <javadocExecutable>${commons.compiler.javadoc}</javadocExecutable>
1528
- </configuration>
1529
- </plugin>
1530
- <plugin>
1531
- <artifactId>maven-assembly-plugin</artifactId>
1532
- <version>${commons.assembly-plugin.version}</version>
1533
- <inherited>true</inherited>
1534
- <executions>
1535
- <execution>
1536
- <goals>
1537
- <goal>single</goal>
1538
- </goals>
1539
- <!-- COMMONSSITE-87 Ensure this runs after all package phase plugins -->
1540
- <phase>verify</phase>
1541
- </execution>
1542
- </executions>
1543
- </plugin>
1544
- <!-- We want to sign the artifact, the POM, and all attached artifacts -->
1545
- <plugin>
1546
- <artifactId>maven-gpg-plugin</artifactId>
1547
- <executions>
1548
- <execution>
1549
- <id>sign-artifacts</id>
1550
- <phase>verify</phase>
1551
- <goals>
1552
- <goal>sign</goal>
1553
- </goals>
1554
- </execution>
1555
- </executions>
1556
- </plugin>
1557
- <plugin>
1558
- <groupId>org.apache.commons</groupId>
1559
- <artifactId>commons-release-plugin</artifactId>
1560
- <executions>
1561
- <execution>
1562
- <id>clean-staging</id>
1563
- <phase>clean</phase>
1564
- <goals>
1565
- <goal>clean-staging</goal>
1566
- </goals>
1567
- </execution>
1568
- <execution>
1569
- <id>detatch-distributions</id>
1570
- <phase>verify</phase>
1571
- <goals>
1572
- <goal>detach-distributions</goal>
1573
- </goals>
1574
- </execution>
1575
- <execution>
1576
- <id>stage-distributions</id>
1577
- <phase>deploy</phase>
1578
- <goals>
1579
- <goal>stage-distributions</goal>
1580
- </goals>
1581
- </execution>
1582
- </executions>
1583
- </plugin>
1584
- </plugins>
1585
- </build>
1586
- </profile>
1587
-
1588
- <!--
1589
- profile to update the Apache parent pom profile of the same name
1590
- to better suit the requirements of Apache Commons.
1591
- [Requires further work]
1592
- -->
1593
- <profile>
1594
- <id>apache-release</id>
1595
- <build>
1596
- <plugins>
1597
- <plugin>
1598
- <artifactId>maven-release-plugin</artifactId>
1599
- <configuration>
1600
- <releaseProfiles>apache-release</releaseProfiles>
1601
- </configuration>
1602
- </plugin>
1603
- <plugin>
1604
- <groupId>org.apache.maven.plugins</groupId>
1605
- <artifactId>maven-source-plugin</artifactId>
1606
- <executions>
1607
- <execution>
1608
- <id>attach-test-sources</id>
1609
- <goals>
1610
- <goal>test-jar</goal>
1611
- </goals>
1612
- </execution>
1613
- </executions>
1614
- </plugin>
1615
- <plugin>
1616
- <artifactId>maven-install-plugin</artifactId>
1617
- <configuration>
1618
- <createChecksum>true</createChecksum>
1619
- </configuration>
1620
- </plugin>
1621
- <plugin>
1622
- <groupId>org.apache.maven.plugins</groupId>
1623
- <artifactId>maven-jar-plugin</artifactId>
1624
- <executions>
1625
- <execution>
1626
- <goals>
1627
- <goal>test-jar</goal>
1628
- </goals>
1629
- </execution>
1630
- </executions>
1631
- </plugin>
1632
- </plugins>
1633
- </build>
1634
- </profile>
1635
-
1636
- <!--
1637
- Profile for running the build using JDK 1.3
1638
- (JAVA_1_3_HOME needs to be defined, e.g. in settings.xml or an environment variable)
1639
- -->
1640
- <profile>
1641
- <id>java-1.3</id>
1642
- <properties>
1643
- <commons.compiler.fork>true</commons.compiler.fork>
1644
- <commons.compiler.compilerVersion>1.3</commons.compiler.compilerVersion>
1645
- <commons.compiler.javac>${JAVA_1_3_HOME}/bin/javac</commons.compiler.javac>
1646
- <commons.compiler.javadoc>${JAVA_1_3_HOME}/bin/javadoc</commons.compiler.javadoc>
1647
- <commons.surefire.java>${JAVA_1_3_HOME}/bin/java</commons.surefire.java>
1648
- </properties>
1649
- </profile>
1650
-
1651
- <!--
1652
- Profile for running the build using JDK 1.4
1653
- (JAVA_1_4_HOME needs to be defined, e.g. in settings.xml or an environment variable)
1654
- -->
1655
- <profile>
1656
- <id>java-1.4</id>
1657
- <properties>
1658
- <commons.compiler.fork>true</commons.compiler.fork>
1659
- <commons.compiler.compilerVersion>1.4</commons.compiler.compilerVersion>
1660
- <commons.compiler.javac>${JAVA_1_4_HOME}/bin/javac</commons.compiler.javac>
1661
- <commons.compiler.javadoc>${JAVA_1_4_HOME}/bin/javadoc</commons.compiler.javadoc>
1662
- <commons.surefire.java>${JAVA_1_4_HOME}/bin/java</commons.surefire.java>
1663
- <!-- later versions of surefire don't support Java 1.4 -->
1664
- <commons.surefire.version>2.11</commons.surefire.version>
1665
- </properties>
1666
- </profile>
1667
-
1668
- <!--
1669
- Profile for running the build using JDK 1.5
1670
- (JAVA_1_5_HOME needs to be defined, e.g. in settings.xml or an environment variable)
1671
- -->
1672
- <profile>
1673
- <id>java-1.5</id>
1674
- <properties>
1675
- <commons.compiler.fork>true</commons.compiler.fork>
1676
- <commons.compiler.compilerVersion>1.5</commons.compiler.compilerVersion>
1677
- <commons.compiler.javac>${JAVA_1_5_HOME}/bin/javac</commons.compiler.javac>
1678
- <commons.compiler.javadoc>${JAVA_1_5_HOME}/bin/javadoc</commons.compiler.javadoc>
1679
- <commons.surefire.java>${JAVA_1_5_HOME}/bin/java</commons.surefire.java>
1680
- </properties>
1681
- </profile>
1682
-
1683
- <!--
1684
- Profile for running the build using JDK 1.6
1685
- (JAVA_1_6_HOME needs to be defined, e.g. in settings.xml or an environment variable)
1686
- -->
1687
- <profile>
1688
- <id>java-1.6</id>
1689
- <properties>
1690
- <commons.compiler.fork>true</commons.compiler.fork>
1691
- <commons.compiler.compilerVersion>1.6</commons.compiler.compilerVersion>
1692
- <commons.compiler.javac>${JAVA_1_6_HOME}/bin/javac</commons.compiler.javac>
1693
- <commons.compiler.javadoc>${JAVA_1_6_HOME}/bin/javadoc</commons.compiler.javadoc>
1694
- <commons.surefire.java>${JAVA_1_6_HOME}/bin/java</commons.surefire.java>
1695
- </properties>
1696
- </profile>
1697
-
1698
- <!--
1699
- Profile for running the build using JDK 7
1700
- (JAVA_1_7_HOME needs to be defined, e.g. in settings.xml or an environment variable)
1701
- -->
1702
- <profile>
1703
- <id>java-1.7</id>
1704
- <properties>
1705
- <commons.compiler.fork>true</commons.compiler.fork>
1706
- <commons.compiler.compilerVersion>1.7</commons.compiler.compilerVersion>
1707
- <commons.compiler.javac>${JAVA_1_7_HOME}/bin/javac</commons.compiler.javac>
1708
- <commons.compiler.javadoc>${JAVA_1_7_HOME}/bin/javadoc</commons.compiler.javadoc>
1709
- <commons.surefire.java>${JAVA_1_7_HOME}/bin/java</commons.surefire.java>
1710
- </properties>
1711
- </profile>
1712
-
1713
- <!--
1714
- Profile for running the build using JDK 8
1715
- (JAVA_1_8_HOME needs to be defined, e.g. in settings.xml or an environment variable)
1716
- -->
1717
- <profile>
1718
- <id>java-1.8</id>
1719
- <properties>
1720
- <commons.compiler.fork>true</commons.compiler.fork>
1721
- <commons.compiler.compilerVersion>1.8</commons.compiler.compilerVersion>
1722
- <commons.compiler.javac>${JAVA_1_8_HOME}/bin/javac</commons.compiler.javac>
1723
- <commons.compiler.javadoc>${JAVA_1_8_HOME}/bin/javadoc</commons.compiler.javadoc>
1724
- <commons.surefire.java>${JAVA_1_8_HOME}/bin/java</commons.surefire.java>
1725
- </properties>
1726
- </profile>
1727
-
1728
- <!--
1729
- Profile for running the build using JDK 9
1730
- (JAVA_1_9_HOME needs to be defined, e.g. in settings.xml or an environment variable)
1731
- -->
1732
- <profile>
1733
- <id>java-1.9</id>
1734
- <properties>
1735
- <commons.compiler.fork>true</commons.compiler.fork>
1736
- <commons.compiler.compilerVersion>1.9</commons.compiler.compilerVersion>
1737
- <commons.compiler.javac>${JAVA_1_9_HOME}/bin/javac</commons.compiler.javac>
1738
- <commons.compiler.javadoc>${JAVA_1_9_HOME}/bin/javadoc</commons.compiler.javadoc>
1739
- <commons.surefire.java>${JAVA_1_9_HOME}/bin/java</commons.surefire.java>
1740
- </properties>
1741
- </profile>
1742
-
1743
- <!--
1744
- Profile for running the build using JDK 10
1745
- (JAVA_1_10_HOME needs to be defined, e.g. in settings.xml or an environment variable)
1746
- -->
1747
- <profile>
1748
- <id>java-1.10</id>
1749
- <properties>
1750
- <commons.compiler.fork>true</commons.compiler.fork>
1751
- <commons.compiler.compilerVersion>1.10</commons.compiler.compilerVersion>
1752
- <commons.compiler.javac>${JAVA_1_10_HOME}/bin/javac</commons.compiler.javac>
1753
- <commons.compiler.javadoc>${JAVA_1_10_HOME}/bin/javadoc</commons.compiler.javadoc>
1754
- <commons.surefire.java>${JAVA_1_10_HOME}/bin/java</commons.surefire.java>
1755
- </properties>
1756
- </profile>
1757
-
1758
- <!--
1759
- Profile for running the build using JDK 11
1760
- (JAVA_1_11_HOME needs to be defined, e.g. in settings.xml or an environment variable)
1761
- -->
1762
- <profile>
1763
- <id>java-1.11</id>
1764
- <properties>
1765
- <commons.compiler.fork>true</commons.compiler.fork>
1766
- <commons.compiler.compilerVersion>1.11</commons.compiler.compilerVersion>
1767
- <commons.compiler.javac>${JAVA_1_11_HOME}/bin/javac</commons.compiler.javac>
1768
- <commons.compiler.javadoc>${JAVA_1_11_HOME}/bin/javadoc</commons.compiler.javadoc>
1769
- <commons.surefire.java>${JAVA_1_11_HOME}/bin/java</commons.surefire.java>
1770
- </properties>
1771
- </profile>
1772
-
1773
- <!--
1774
- Profile for running the build using JDK 12
1775
- (JAVA_1_12_HOME needs to be defined, e.g. in settings.xml or an environment variable)
1776
- -->
1777
- <profile>
1778
- <id>java-1.12</id>
1779
- <properties>
1780
- <commons.compiler.fork>true</commons.compiler.fork>
1781
- <commons.compiler.compilerVersion>1.12</commons.compiler.compilerVersion>
1782
- <commons.compiler.javac>${JAVA_1_12_HOME}/bin/javac</commons.compiler.javac>
1783
- <commons.compiler.javadoc>${JAVA_1_12_HOME}/bin/javadoc</commons.compiler.javadoc>
1784
- <commons.surefire.java>${JAVA_1_12_HOME}/bin/java</commons.surefire.java>
1785
- </properties>
1786
- </profile>
1787
-
1788
- <!--
1789
- Profile for running the build using JDK 13
1790
- (JAVA_1_13_HOME needs to be defined, e.g. in settings.xml or an environment variable)
1791
- -->
1792
- <profile>
1793
- <id>java-1.13</id>
1794
- <properties>
1795
- <commons.compiler.fork>true</commons.compiler.fork>
1796
- <commons.compiler.compilerVersion>1.13</commons.compiler.compilerVersion>
1797
- <commons.compiler.javac>${JAVA_1_13_HOME}/bin/javac</commons.compiler.javac>
1798
- <commons.compiler.javadoc>${JAVA_1_13_HOME}/bin/javadoc</commons.compiler.javadoc>
1799
- <commons.surefire.java>${JAVA_1_13_HOME}/bin/java</commons.surefire.java>
1800
- </properties>
1801
- </profile>
1802
-
1803
- <!-- N.B. when adding new java profiles, be sure to update
1804
- the _removeheaders list in the maven_bundle_plugin configuration -->
1805
-
1806
- <!--
1807
- | Profile to allow testing of deploy phase
1808
- | e.g.
1809
- | mvn deploy -Ptest-deploy -Prelease -Dgpg.skip
1810
- -->
1811
- <profile>
1812
- <id>test-deploy</id>
1813
- <properties>
1814
- <altDeploymentRepository>id::default::file:target/deploy</altDeploymentRepository>
1815
- <commons.release.dryRun>true</commons.release.dryRun>
1816
- </properties>
1817
- </profile>
1818
-
1819
- <profile>
1820
- <!--
1821
- Generate release notes in top-level directory from src/changes/changes.xml
1822
- Usage:
1823
- mvn changes:announcement-generate -Prelease-notes [-Dchanges.version=nnn]
1824
-
1825
- Defining changes.version allows one to create the RN without first removing the SNAPSHOT suffix.
1826
-
1827
- Requires file src/changes/release-notes.vm.
1828
- A sample template is available from:
1829
- https://gitbox.apache.org/repos/asf?p=commons-parent.git;a=blob_plain;f=src/changes/release-notes.vm;hb=HEAD
1830
- -->
1831
- <id>release-notes</id>
1832
- <build>
1833
- <plugins>
1834
- <plugin>
1835
- <groupId>org.apache.maven.plugins</groupId>
1836
- <artifactId>maven-changes-plugin</artifactId>
1837
- <version>${commons.changes.version}</version>
1838
- <configuration>
1839
- <template>release-notes.vm</template>
1840
- <templateDirectory>src/changes</templateDirectory>
1841
- <runOnlyAtExecutionRoot>true</runOnlyAtExecutionRoot>
1842
- <announcementDirectory>${changes.announcementDirectory}</announcementDirectory>
1843
- <announcementFile>${changes.announcementFile}</announcementFile>
1844
- <announceParameters>
1845
- <releaseVersion>${commons.release.version}</releaseVersion>
1846
- </announceParameters>
1847
- </configuration>
1848
- <executions>
1849
- <execution>
1850
- <id>create-release-notes</id>
1851
- <phase>generate-resources</phase>
1852
- <goals>
1853
- <goal>announcement-generate</goal>
1854
- </goals>
1855
- </execution>
1856
- </executions>
1857
- </plugin>
1858
- </plugins>
1859
- </build>
1860
- </profile>
1861
-
1862
- <!--
1863
- Automatically run the buildnumber plugin unless the buildNumber.skip property is defined as true
1864
- -->
1865
- <profile>
1866
- <id>svn-buildnumber</id>
1867
- <activation>
1868
- <property>
1869
- <name>!buildNumber.skip</name>
1870
- <value>!true</value>
1871
- </property>
1872
- </activation>
1873
- <build>
1874
- <plugins>
1875
- <plugin>
1876
- <groupId>org.codehaus.mojo</groupId>
1877
- <artifactId>buildnumber-maven-plugin</artifactId>
1878
- <executions>
1879
- <execution>
1880
- <phase>generate-resources</phase>
1881
- <goals>
1882
- <goal>create</goal>
1883
- </goals>
1884
- </execution>
1885
- </executions>
1886
- <configuration>
1887
- <!-- Use committed revision so it does not change every time svn update is run -->
1888
- <useLastCommittedRevision>true</useLastCommittedRevision>
1889
- <!-- default revision number if unavailable -->
1890
- <revisionOnScmFailure>??????</revisionOnScmFailure>
1891
- <doCheck>false</doCheck>
1892
- <doUpdate>false</doUpdate>
1893
- </configuration>
1894
- </plugin>
1895
- </plugins>
1896
- </build>
1897
- </profile>
1898
- <!-- optional profile to use javasvn instead of the SVN CLI for the buildNumber plugin -->
1899
- <profile>
1900
- <id>javasvn</id>
1901
- <build>
1902
- <plugins>
1903
- <plugin>
1904
- <groupId>org.codehaus.mojo</groupId>
1905
- <artifactId>buildnumber-maven-plugin</artifactId>
1906
- <configuration>
1907
- <providerImplementations>
1908
- <svn>javasvn</svn>
1909
- </providerImplementations>
1910
- </configuration>
1911
- </plugin>
1912
- </plugins>
1913
- </build>
1914
- </profile>
1915
- <!-- profile to allow the use of plugin versions that require Java 7 -->
1916
- <profile>
1917
- <id>jdk7-plugin-fix-version</id>
1918
- <activation>
1919
- <jdk>[1.7,1.8)</jdk>
1920
- </activation>
1921
- <properties>
1922
- <commons.felix.version>3.5.1</commons.felix.version>
1923
- <commons.animal-sniffer.version>1.17</commons.animal-sniffer.version>
1924
- <commons.biz.aQute.bndlib.version>3.5.0</commons.biz.aQute.bndlib.version>
1925
- </properties>
1926
- </profile>
1927
-
1928
- <!-- allow simple creation of the site without any optional reports -->
1929
- <profile>
1930
- <id>site-basic</id>
1931
- <properties>
1932
- <skipTests>true</skipTests>
1933
- <maven.javadoc.skip>true</maven.javadoc.skip>
1934
- <cobertura.skip>true</cobertura.skip>
1935
- <findbugs.skip>true</findbugs.skip>
1936
- <spotbugs.skip>true</spotbugs.skip>
1937
- <checkstyle.skip>true</checkstyle.skip>
1938
- <clirr.skip>true</clirr.skip>
1939
- <changes.jira.skip>true</changes.jira.skip>
1940
- <rat.skip>true</rat.skip> <!-- from version 0.12 -->
1941
- <jacoco.skip>true</jacoco.skip>
1942
- <skipSurefireReport>true</skipSurefireReport>
1943
- </properties>
1944
- </profile>
1945
-
1946
- <profile>
1947
- <id>travis-cobertura</id>
1948
- <build>
1949
- <plugins>
1950
- <plugin>
1951
- <groupId>org.codehaus.mojo</groupId>
1952
- <artifactId>cobertura-maven-plugin</artifactId>
1953
- <version>${commons.cobertura.version}</version>
1954
- <configuration>
1955
- <formats>
1956
- <format>xml</format>
1957
- </formats>
1958
- </configuration>
1959
- </plugin>
1960
- <plugin>
1961
- <groupId>org.eluder.coveralls</groupId>
1962
- <artifactId>coveralls-maven-plugin</artifactId>
1963
- <version>${commons.coveralls.version}</version>
1964
- <configuration>
1965
- <timestampFormat>${commons.coveralls.timestampFormat}</timestampFormat>
1966
- </configuration>
1967
- </plugin>
1968
- </plugins>
1969
- </build>
1970
- </profile>
1971
-
1972
- <profile>
1973
- <id>travis-jacoco</id>
1974
- <build>
1975
- <plugins>
1976
- <plugin>
1977
- <groupId>org.jacoco</groupId>
1978
- <artifactId>jacoco-maven-plugin</artifactId>
1979
- <version>${commons.jacoco.version}</version>
1980
- </plugin>
1981
- <plugin>
1982
- <groupId>org.eluder.coveralls</groupId>
1983
- <artifactId>coveralls-maven-plugin</artifactId>
1984
- <version>${commons.coveralls.version}</version>
1985
- <configuration>
1986
- <timestampFormat>${commons.coveralls.timestampFormat}</timestampFormat>
1987
- </configuration>
1988
- </plugin>
1989
- </plugins>
1990
- </build>
1991
- </profile>
1992
-
1993
- </profiles>
1994
-
1995
- </project>