Restrictive configurations for Java static analysis tools.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

213 lines
5.7KB

  1. <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  2. xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  3. <modelVersion>4.0.0</modelVersion>
  4. <groupId>org.perfectable</groupId>
  5. <artifactId>buildable</artifactId>
  6. <version>7.1.0</version>
  7. <name>Buildable</name>
  8. <description>Restrictive configurations for Java static analysis tools</description>
  9. <url>https://perfectable.org/</url>
  10. <inceptionYear>2016</inceptionYear>
  11. <licenses>
  12. <license>
  13. <name>MIT License</name>
  14. <url>https://opensource.org/licenses/MIT</url>
  15. <distribution>repo</distribution>
  16. </license>
  17. </licenses>
  18. <developers>
  19. <developer>
  20. <id>nivertius</id>
  21. <name>Paweł Płazieński</name>
  22. <email>nivertius@gmail.com</email>
  23. <roles>
  24. <role>Developer</role>
  25. </roles>
  26. </developer>
  27. </developers>
  28. <scm>
  29. <connection>scm:git:https://source.perfectable.org/nivertius/buildable.git</connection>
  30. <developerConnection>scm:git:git@source.perfectable.org:nivertius/buildable.git</developerConnection>
  31. <tag>v7.1.0</tag>
  32. <url>https://source.perfectable.org/nivertius/buildable</url>
  33. </scm>
  34. <distributionManagement>
  35. <repository>
  36. <id>ossrh</id>
  37. <url>https://oss.sonatype.org/service/local/staging/deploy/maven2</url>
  38. </repository>
  39. <snapshotRepository>
  40. <id>ossrh</id>
  41. <url>https://oss.sonatype.org/content/repositories/snapshots</url>
  42. </snapshotRepository>
  43. </distributionManagement>
  44. <properties>
  45. <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  46. </properties>
  47. <build>
  48. <resources>
  49. <resource>
  50. <filtering>false</filtering>
  51. <directory>conf</directory>
  52. <includes>
  53. <include>**</include>
  54. </includes>
  55. </resource>
  56. </resources>
  57. <plugins>
  58. <plugin>
  59. <groupId>org.codehaus.mojo</groupId>
  60. <artifactId>build-helper-maven-plugin</artifactId>
  61. <version>1.10</version>
  62. <executions>
  63. <execution>
  64. <id>determine-snapshot-status</id>
  65. <goals>
  66. <goal>bsh-property</goal>
  67. </goals>
  68. <phase>initialize</phase>
  69. <configuration>
  70. <properties>
  71. <property>evaluated.isSnapshot</property>
  72. </properties>
  73. <source>evaluated.isSnapshot = project.getVersion().endsWith("-SNAPSHOT")</source>
  74. </configuration>
  75. </execution>
  76. </executions>
  77. </plugin>
  78. <plugin>
  79. <groupId>com.github.ekryd.sortpom</groupId>
  80. <artifactId>sortpom-maven-plugin</artifactId>
  81. <version>2.8.0</version>
  82. <configuration>
  83. <encoding>${project.build.sourceEncoding}</encoding>
  84. <verifyFail>Stop</verifyFail>
  85. <lineSeparator>\n</lineSeparator>
  86. <createBackupFile>false</createBackupFile>
  87. <predefinedSortOrder>recommended_2008_06</predefinedSortOrder>
  88. <nrOfIndentSpace>-1</nrOfIndentSpace>
  89. <expandEmptyElements>false</expandEmptyElements>
  90. <keepBlankLines>true</keepBlankLines>
  91. </configuration>
  92. <executions>
  93. <execution>
  94. <id>require-sorted-pom</id>
  95. <goals>
  96. <goal>verify</goal>
  97. </goals>
  98. <phase>validate</phase>
  99. </execution>
  100. </executions>
  101. </plugin>
  102. <plugin>
  103. <groupId>org.apache.maven.plugins</groupId>
  104. <artifactId>maven-compiler-plugin</artifactId>
  105. <version>3.8.0</version>
  106. <executions>
  107. <execution>
  108. <id>default-compile</id>
  109. <phase>none</phase>
  110. </execution>
  111. <execution>
  112. <id>default-testCompile</id>
  113. <phase>none</phase>
  114. </execution>
  115. </executions>
  116. </plugin>
  117. <plugin>
  118. <groupId>org.apache.maven.plugins</groupId>
  119. <artifactId>maven-surefire-plugin</artifactId>
  120. <version>2.22.0</version>
  121. <executions>
  122. <execution>
  123. <id>default-test</id>
  124. <phase>none</phase>
  125. </execution>
  126. </executions>
  127. </plugin>
  128. <plugin>
  129. <groupId>org.apache.maven.plugins</groupId>
  130. <artifactId>maven-resources-plugin</artifactId>
  131. <version>3.1.0</version>
  132. <executions>
  133. <execution>
  134. <id>default-testResources</id>
  135. <phase>none</phase>
  136. </execution>
  137. </executions>
  138. </plugin>
  139. <plugin>
  140. <groupId>org.apache.maven.plugins</groupId>
  141. <artifactId>maven-gpg-plugin</artifactId>
  142. <version>1.6</version>
  143. <executions>
  144. <execution>
  145. <id>sign-artifacts</id>
  146. <goals>
  147. <goal>sign</goal>
  148. </goals>
  149. <phase>verify</phase>
  150. <configuration>
  151. <skip>${evaluated.isSnapshot}</skip>
  152. </configuration>
  153. </execution>
  154. </executions>
  155. </plugin>
  156. </plugins>
  157. </build>
  158. <profiles>
  159. <profile>
  160. <id>git-defaults</id>
  161. <activation>
  162. <file>
  163. <exists>${basedir}/.git</exists>
  164. </file>
  165. </activation>
  166. <build>
  167. <plugins>
  168. <plugin>
  169. <groupId>pl.project13.maven</groupId>
  170. <artifactId>git-commit-id-plugin</artifactId>
  171. <version>2.2.4</version>
  172. <configuration>
  173. <dotGitDirectory>${basedir}/.git</dotGitDirectory>
  174. <failOnUnableToExtractRepoInfo>true</failOnUnableToExtractRepoInfo>
  175. <runOnlyOnce>true</runOnlyOnce>
  176. </configuration>
  177. <executions>
  178. <execution>
  179. <id>generate-git-properties</id>
  180. <goals>
  181. <goal>revision</goal>
  182. </goals>
  183. </execution>
  184. </executions>
  185. </plugin>
  186. <plugin>
  187. <groupId>org.apache.maven.plugins</groupId>
  188. <artifactId>maven-jar-plugin</artifactId>
  189. <version>3.1.0</version>
  190. <configuration>
  191. <archive>
  192. <manifestEntries>
  193. <SCM-Revision>${git.commit.id.describe-short}</SCM-Revision>
  194. <SCM-Revision-Id>${git.commit.id}</SCM-Revision-Id>
  195. <SCM-Revision-Date>${git.commit.time}</SCM-Revision-Date>
  196. </manifestEntries>
  197. </archive>
  198. </configuration>
  199. </plugin>
  200. </plugins>
  201. </build>
  202. </profile>
  203. </profiles>
  204. </project>