pom.xml 6.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188
  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.10.0-SNAPSHOT</version>
  27. </parent>
  28. <artifactId>zookeeper-jute</artifactId>
  29. <packaging>jar</packaging>
  30. <name>Apache ZooKeeper - Jute</name>
  31. <description>ZooKeeper jute</description>
  32. <dependencies>
  33. <dependency>
  34. <groupId>org.apache.yetus</groupId>
  35. <artifactId>audience-annotations</artifactId>
  36. </dependency>
  37. <dependency>
  38. <groupId>org.junit.jupiter</groupId>
  39. <artifactId>junit-jupiter-engine</artifactId>
  40. <scope>test</scope>
  41. </dependency>
  42. </dependencies>
  43. <build>
  44. <plugins>
  45. <plugin>
  46. <groupId>org.codehaus.mojo</groupId>
  47. <artifactId>javacc-maven-plugin</artifactId>
  48. <version>2.6</version>
  49. <executions>
  50. <execution>
  51. <phase>generate-sources</phase>
  52. <id>javacc</id>
  53. <goals>
  54. <goal>javacc</goal>
  55. </goals>
  56. <configuration>
  57. <sourceDirectory>${project.basedir}/src/main/java/org/apache/jute/compiler/generated/</sourceDirectory>
  58. <includes>
  59. <include>rcc.jj</include>
  60. </includes>
  61. <lookAhead>2</lookAhead>
  62. <isStatic>false</isStatic>
  63. <outputDirectory>${project.build.directory}/generated-sources/java</outputDirectory>
  64. </configuration>
  65. </execution>
  66. </executions>
  67. </plugin>
  68. <plugin>
  69. <artifactId>maven-compiler-plugin</artifactId>
  70. <executions>
  71. <execution>
  72. <id>pre-compile-jute</id>
  73. <phase>generate-sources</phase>
  74. <goals>
  75. <goal>compile</goal>
  76. </goals>
  77. </execution>
  78. </executions>
  79. </plugin>
  80. <plugin>
  81. <groupId>org.codehaus.mojo</groupId>
  82. <artifactId>exec-maven-plugin</artifactId>
  83. <executions>
  84. <execution>
  85. <id>generate-Java-Jute</id>
  86. <phase>generate-sources</phase>
  87. <goals>
  88. <goal>exec</goal>
  89. </goals>
  90. <configuration>
  91. <workingDirectory>${project.build.directory}/generated-sources/java</workingDirectory>
  92. <executable>java</executable>
  93. <arguments>
  94. <argument>-classpath</argument>
  95. <classpath />
  96. <argument>org.apache.jute.compiler.generated.Rcc</argument>
  97. <argument>-l</argument>
  98. <argument>java</argument>
  99. <argument>${project.basedir}/src/main/resources/zookeeper.jute</argument>
  100. </arguments>
  101. </configuration>
  102. </execution>
  103. <execution>
  104. <id>generate-C-Jute</id>
  105. <phase>generate-sources</phase>
  106. <goals>
  107. <goal>exec</goal>
  108. </goals>
  109. <configuration>
  110. <workingDirectory>${project.basedir}/../zookeeper-client/zookeeper-client-c/generated/</workingDirectory>
  111. <executable>java</executable>
  112. <arguments>
  113. <argument>-classpath</argument>
  114. <classpath />
  115. <argument>org.apache.jute.compiler.generated.Rcc</argument>
  116. <argument>-l</argument>
  117. <argument>c</argument>
  118. <argument>${project.basedir}/src/main/resources/zookeeper.jute</argument>
  119. </arguments>
  120. </configuration>
  121. </execution>
  122. </executions>
  123. </plugin>
  124. <plugin>
  125. <groupId>org.codehaus.mojo</groupId>
  126. <artifactId>build-helper-maven-plugin</artifactId>
  127. <executions>
  128. <execution>
  129. <id>jute-as-dependency</id>
  130. <phase>generate-sources</phase>
  131. <goals>
  132. <goal>add-source</goal>
  133. </goals>
  134. <configuration>
  135. <sources>
  136. <source>${basedir}/target/generated-sources/java</source>
  137. </sources>
  138. </configuration>
  139. </execution>
  140. </executions>
  141. </plugin>
  142. <plugin>
  143. <!-- spotbugs does not make sense for generated code -->
  144. <groupId>com.github.spotbugs</groupId>
  145. <artifactId>spotbugs-maven-plugin</artifactId>
  146. <configuration>
  147. <skip>true</skip>
  148. </configuration>
  149. </plugin>
  150. <plugin>
  151. <groupId>org.apache.felix</groupId>
  152. <artifactId>maven-bundle-plugin</artifactId>
  153. <executions>
  154. <execution>
  155. <id>build bundle</id>
  156. <phase>package</phase>
  157. <goals>
  158. <goal>bundle</goal>
  159. </goals>
  160. </execution>
  161. </executions>
  162. <configuration>
  163. <instructions>
  164. <Import-Package>
  165. *;resolution:=optional
  166. </Import-Package>
  167. <Export-Package>
  168. org.apache.zookeeper.data,
  169. org.apache.zookeeper.proto,
  170. org.apache.zookeeper.txn,
  171. !org.apache.zookeeper*,
  172. org.apache.jute*
  173. </Export-Package>
  174. <Bundle-Name>ZooKeeper Jute Bundle</Bundle-Name>
  175. <Bundle-DocURL>https://zookeeper.apache.org/doc/current/</Bundle-DocURL>
  176. <Implementation-Build>${mvngit.commit.id}</Implementation-Build>
  177. <Merge-Headers>!Implementation-Build,*</Merge-Headers>
  178. </instructions>
  179. <classifier>osgi</classifier>
  180. </configuration>
  181. </plugin>
  182. </plugins>
  183. </build>
  184. </project>