pom.xml 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  3. <!--
  4. /**
  5. * Licensed to the Apache Software Foundation (ASF) under one
  6. * or more contributor license agreements. See the NOTICE file
  7. * distributed with this work for additional information
  8. * regarding copyright ownership. The ASF licenses this file
  9. * to you under the Apache License, Version 2.0 (the
  10. * "License"); you may not use this file except in compliance
  11. * with the License. You may obtain a copy of the License at
  12. *
  13. * http://www.apache.org/licenses/LICENSE-2.0
  14. *
  15. * Unless required by applicable law or agreed to in writing, software
  16. * distributed under the License is distributed on an "AS IS" BASIS,
  17. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  18. * See the License for the specific language governing permissions and
  19. * limitations under the License.
  20. */
  21. -->
  22. <modelVersion>4.0.0</modelVersion>
  23. <parent>
  24. <groupId>org.apache.zookeeper</groupId>
  25. <artifactId>parent</artifactId>
  26. <version>3.8.0-SNAPSHOT</version>
  27. </parent>
  28. <artifactId>zookeeper</artifactId>
  29. <packaging>jar</packaging>
  30. <name>Apache ZooKeeper - Server</name>
  31. <description>ZooKeeper server</description>
  32. <dependencies>
  33. <dependency>
  34. <groupId>com.github.spotbugs</groupId>
  35. <artifactId>spotbugs-annotations</artifactId>
  36. <scope>provided</scope>
  37. <optional>true</optional>
  38. </dependency>
  39. <dependency>
  40. <groupId>org.hamcrest</groupId>
  41. <artifactId>hamcrest-library</artifactId>
  42. <scope>test</scope>
  43. </dependency>
  44. <dependency>
  45. <groupId>org.apache.commons</groupId>
  46. <artifactId>commons-collections4</artifactId>
  47. <scope>test</scope>
  48. </dependency>
  49. <dependency>
  50. <groupId>org.apache.zookeeper</groupId>
  51. <artifactId>zookeeper-jute</artifactId>
  52. <version>${project.version}</version>
  53. </dependency>
  54. <dependency>
  55. <groupId>commons-cli</groupId>
  56. <artifactId>commons-cli</artifactId>
  57. <scope>provided</scope>
  58. </dependency>
  59. <dependency>
  60. <groupId>org.apache.yetus</groupId>
  61. <artifactId>audience-annotations</artifactId>
  62. </dependency>
  63. <dependency>
  64. <groupId>io.netty</groupId>
  65. <artifactId>netty-handler</artifactId>
  66. </dependency>
  67. <dependency>
  68. <groupId>io.netty</groupId>
  69. <artifactId>netty-transport-native-epoll</artifactId>
  70. </dependency>
  71. <dependency>
  72. <groupId>org.slf4j</groupId>
  73. <artifactId>slf4j-api</artifactId>
  74. </dependency>
  75. <dependency>
  76. <groupId>ch.qos.logback</groupId>
  77. <artifactId>logback-core</artifactId>
  78. </dependency>
  79. <dependency>
  80. <groupId>ch.qos.logback</groupId>
  81. <artifactId>logback-classic</artifactId>
  82. </dependency>
  83. <dependency>
  84. <groupId>org.eclipse.jetty</groupId>
  85. <artifactId>jetty-server</artifactId>
  86. <scope>provided</scope>
  87. </dependency>
  88. <dependency>
  89. <groupId>org.eclipse.jetty</groupId>
  90. <artifactId>jetty-servlet</artifactId>
  91. <scope>provided</scope>
  92. </dependency>
  93. <dependency>
  94. <groupId>org.eclipse.jetty</groupId>
  95. <artifactId>jetty-client</artifactId>
  96. <scope>provided</scope>
  97. </dependency>
  98. <dependency>
  99. <groupId>com.fasterxml.jackson.core</groupId>
  100. <artifactId>jackson-databind</artifactId>
  101. <scope>provided</scope>
  102. </dependency>
  103. <dependency>
  104. <groupId>org.bouncycastle</groupId>
  105. <artifactId>bcprov-jdk15on</artifactId>
  106. <scope>test</scope>
  107. </dependency>
  108. <dependency>
  109. <groupId>org.bouncycastle</groupId>
  110. <artifactId>bcpkix-jdk15on</artifactId>
  111. <scope>test</scope>
  112. </dependency>
  113. <dependency>
  114. <groupId>jline</groupId>
  115. <artifactId>jline</artifactId>
  116. <scope>provided</scope>
  117. </dependency>
  118. <dependency>
  119. <groupId>io.dropwizard.metrics</groupId>
  120. <artifactId>metrics-core</artifactId>
  121. <scope>provided</scope>
  122. </dependency>
  123. <dependency>
  124. <groupId>org.apache.kerby</groupId>
  125. <artifactId>kerb-core</artifactId>
  126. <scope>test</scope>
  127. </dependency>
  128. <dependency>
  129. <groupId>org.apache.kerby</groupId>
  130. <artifactId>kerb-simplekdc</artifactId>
  131. <scope>test</scope>
  132. </dependency>
  133. <dependency>
  134. <groupId>org.apache.kerby</groupId>
  135. <artifactId>kerby-config</artifactId>
  136. <scope>test</scope>
  137. </dependency>
  138. <dependency>
  139. <groupId>org.mockito</groupId>
  140. <artifactId>mockito-core</artifactId>
  141. <scope>test</scope>
  142. </dependency>
  143. <dependency>
  144. <groupId>org.jmockit</groupId>
  145. <artifactId>jmockit</artifactId>
  146. <scope>test</scope>
  147. </dependency>
  148. <dependency>
  149. <groupId>org.junit.jupiter</groupId>
  150. <artifactId>junit-jupiter-api</artifactId>
  151. <scope>test</scope>
  152. </dependency>
  153. <dependency>
  154. <groupId>org.junit.jupiter</groupId>
  155. <artifactId>junit-jupiter-engine</artifactId>
  156. <scope>test</scope>
  157. </dependency>
  158. <dependency>
  159. <groupId>org.junit.jupiter</groupId>
  160. <artifactId>junit-jupiter-params</artifactId>
  161. <scope>test</scope>
  162. </dependency>
  163. <dependency>
  164. <groupId>org.junit.platform</groupId>
  165. <artifactId>junit-platform-runner</artifactId>
  166. <scope>test</scope>
  167. </dependency>
  168. <dependency>
  169. <groupId>org.xerial.snappy</groupId>
  170. <artifactId>snappy-java</artifactId>
  171. <scope>provided</scope>
  172. </dependency>
  173. <dependency>
  174. <groupId>commons-io</groupId>
  175. <artifactId>commons-io</artifactId>
  176. <scope>compile</scope>
  177. </dependency>
  178. </dependencies>
  179. <build>
  180. <plugins>
  181. <plugin>
  182. <groupId>org.codehaus.mojo</groupId>
  183. <artifactId>build-helper-maven-plugin</artifactId>
  184. <executions>
  185. <execution>
  186. <!-- ${maven.build.timestamp} does not support timezone :( -->
  187. <id>tbuild-time</id>
  188. <goals>
  189. <goal>timestamp-property</goal>
  190. </goals>
  191. <configuration>
  192. <name>build.time</name>
  193. <pattern>yyyy-MM-dd HH:mm zz</pattern>
  194. <locale>en_US</locale>
  195. <timeZone>UTC</timeZone>
  196. </configuration>
  197. </execution>
  198. <execution>
  199. <id>parse-version</id>
  200. <goals>
  201. <goal>parse-version</goal>
  202. </goals>
  203. </execution>
  204. <execution>
  205. <phase>generate-sources</phase>
  206. <goals>
  207. <goal>add-source</goal>
  208. </goals>
  209. <configuration>
  210. <sources>
  211. <source>${project.build.directory}/generated-sources/java</source>
  212. </sources>
  213. </configuration>
  214. </execution>
  215. </executions>
  216. </plugin>
  217. <plugin>
  218. <groupId>org.apache.maven.plugins</groupId>
  219. <artifactId>maven-resources-plugin</artifactId>
  220. <executions>
  221. <execution>
  222. <id>prepare-filtered-java-source</id>
  223. <goals>
  224. <goal>copy-resources</goal>
  225. </goals>
  226. <phase>generate-sources</phase>
  227. <configuration>
  228. <outputDirectory>${project.build.directory}/generated-sources/java</outputDirectory>
  229. <resources>
  230. <resource>
  231. <directory>src/main/java-filtered</directory>
  232. <filtering>true</filtering>
  233. </resource>
  234. </resources>
  235. </configuration>
  236. </execution>
  237. </executions>
  238. </plugin>
  239. <plugin>
  240. <groupId>org.apache.maven.plugins</groupId>
  241. <artifactId>maven-dependency-plugin</artifactId>
  242. <executions>
  243. <execution>
  244. <id>copy-dependencies</id>
  245. <phase>package</phase>
  246. <goals>
  247. <goal>copy-dependencies</goal>
  248. </goals>
  249. <configuration>
  250. <outputDirectory>${project.build.directory}/lib</outputDirectory>
  251. <overWriteReleases>false</overWriteReleases>
  252. <overWriteSnapshots>true</overWriteSnapshots>
  253. <excludeTransitive>false</excludeTransitive>
  254. </configuration>
  255. </execution>
  256. </executions>
  257. </plugin>
  258. <plugin>
  259. <groupId>org.apache.maven.plugins</groupId>
  260. <artifactId>maven-surefire-plugin</artifactId>
  261. <configuration>
  262. <includes>
  263. <include>**/*Test.java</include>
  264. </includes>
  265. <forkCount>${surefire-forkcount}</forkCount>
  266. <reuseForks>false</reuseForks>
  267. <argLine>-Xmx512m -Dtest.junit.threads=${surefire-forkcount} -Dzookeeper.junit.threadid=${surefire.forkNumber} -javaagent:${org.jmockit:jmockit:jar}</argLine>
  268. <basedir>${project.basedir}</basedir>
  269. <systemPropertyVariables>
  270. <build.test.dir>${project.build.directory}/surefire</build.test.dir>
  271. <zookeeper.DigestAuthenticationProvider.superDigest>super:D/InIHSb7yEEbrWz8b9l71RjZJU=</zookeeper.DigestAuthenticationProvider.superDigest>
  272. </systemPropertyVariables>
  273. </configuration>
  274. </plugin>
  275. <plugin>
  276. <groupId>org.apache.felix</groupId>
  277. <artifactId>maven-bundle-plugin</artifactId>
  278. <executions>
  279. <execution>
  280. <id>build bundle</id>
  281. <phase>package</phase>
  282. <goals>
  283. <goal>bundle</goal>
  284. </goals>
  285. </execution>
  286. </executions>
  287. <configuration>
  288. <instructions>
  289. <Import-Package>
  290. io.netty.buffer;resolution:=optional,
  291. io.netty.channel;resolution:=optional,
  292. io.netty.channel.group;resolution:=optional,
  293. io.netty.channel.socket.nio;resolution:=optional,
  294. javax.management;resolution:=optional,
  295. javax.security.auth.callback,
  296. javax.security.auth.login,
  297. javax.security.sasl,
  298. org.ietf.jgss,
  299. org.osgi.framework;resolution:=optional,
  300. org.osgi.util.tracker;resolution:=optional,
  301. org.slf4j,
  302. *;resolution:=optional
  303. </Import-Package>
  304. <Export-Package>
  305. !org.apache.zookeeper.data,
  306. !org.apache.zookeeper.proto,
  307. !org.apache.zookeeper.txn,
  308. org.apache.zookeeper*
  309. </Export-Package>
  310. <Bundle-Name>ZooKeeper Bundle</Bundle-Name>
  311. <Bundle-DocURL>https://zookeeper.apache.org/doc/current/</Bundle-DocURL>
  312. <Implementation-Build>${mvngit.commit.id}</Implementation-Build>
  313. <Merge-Headers>!Implementation-Build,*</Merge-Headers>
  314. </instructions>
  315. <classifier>osgi</classifier>
  316. </configuration>
  317. </plugin>
  318. <plugin>
  319. <groupId>org.apache.maven.plugins</groupId>
  320. <artifactId>maven-jar-plugin</artifactId>
  321. <executions>
  322. <execution>
  323. <id>publish-test-jar</id>
  324. <goals>
  325. <goal>test-jar</goal>
  326. </goals>
  327. </execution>
  328. </executions>
  329. </plugin>
  330. </plugins>
  331. </build>
  332. </project>