pom.xml 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <project xmlns="http://maven.apache.org/POM/4.0.0"
  3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  4. xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  5. <modelVersion>4.0.0</modelVersion>
  6. <parent>
  7. <groupId>io.milvus</groupId>
  8. <artifactId>milvus-sdk-java-parent</artifactId>
  9. <version>${revision}</version>
  10. <relativePath>../pom.xml</relativePath>
  11. </parent>
  12. <artifactId>milvus-sdk-java</artifactId>
  13. <packaging>jar</packaging>
  14. <name>${project.artifactId}</name>
  15. <description>Milvus Java SDK core functions</description>
  16. <properties>
  17. <skip.maven.deploy>false</skip.maven.deploy>
  18. </properties>
  19. <dependencyManagement>
  20. <dependencies>
  21. <dependency>
  22. <groupId>io.grpc</groupId>
  23. <artifactId>grpc-bom</artifactId>
  24. <version>${grpc.version}</version>
  25. <type>pom</type>
  26. <scope>import</scope>
  27. </dependency>
  28. <dependency>
  29. <groupId>org.slf4j</groupId>
  30. <artifactId>slf4j-api</artifactId>
  31. <version>${slf4j.api.version}</version>
  32. </dependency>
  33. <dependency>
  34. <groupId>com.google.guava</groupId>
  35. <artifactId>guava</artifactId>
  36. <version>${guava.version}</version>
  37. </dependency>
  38. <dependency>
  39. <groupId>com.google.errorprone</groupId>
  40. <artifactId>error_prone_annotations</artifactId>
  41. <version>${errorprone.version}</version>
  42. </dependency>
  43. <dependency>
  44. <groupId>org.jetbrains.kotlin</groupId>
  45. <artifactId>kotlin-stdlib-jdk8</artifactId>
  46. <version>${kotlin.version}</version>
  47. </dependency>
  48. <dependency>
  49. <groupId>org.jetbrains.kotlin</groupId>
  50. <artifactId>kotlin-stdlib-common</artifactId>
  51. <version>${kotlin.version}</version>
  52. </dependency>
  53. <dependency>
  54. <groupId>org.jetbrains.kotlin</groupId>
  55. <artifactId>kotlin-stdlib</artifactId>
  56. <version>${kotlin.version}</version>
  57. </dependency>
  58. <dependency>
  59. <groupId>org.testcontainers</groupId>
  60. <artifactId>testcontainers-bom</artifactId>
  61. <version>${testcontainers.version}</version>
  62. <type>pom</type>
  63. <scope>import</scope>
  64. </dependency>
  65. </dependencies>
  66. </dependencyManagement>
  67. <dependencies>
  68. <dependency>
  69. <groupId>org.mockito</groupId>
  70. <artifactId>mockito-core</artifactId>
  71. <version>${mockito.version}</version>
  72. <scope>test</scope>
  73. </dependency>
  74. <dependency>
  75. <groupId>org.mockito</groupId>
  76. <artifactId>mockito-junit-jupiter</artifactId>
  77. <version>${mockito.version}</version>
  78. <scope>test</scope>
  79. </dependency>
  80. <dependency>
  81. <groupId>org.mockito</groupId>
  82. <artifactId>mockito-inline</artifactId>
  83. <version>${mockito.version}</version>
  84. <scope>test</scope>
  85. </dependency>
  86. <dependency>
  87. <groupId>io.grpc</groupId>
  88. <artifactId>grpc-netty-shaded</artifactId>
  89. <version>${grpc.version}</version>
  90. </dependency>
  91. <dependency>
  92. <groupId>io.grpc</groupId>
  93. <artifactId>grpc-protobuf</artifactId>
  94. <version>${grpc.version}</version>
  95. </dependency>
  96. <dependency>
  97. <groupId>io.grpc</groupId>
  98. <artifactId>grpc-stub</artifactId>
  99. <version>${grpc.version}</version>
  100. </dependency>
  101. <dependency>
  102. <groupId>javax.annotation</groupId>
  103. <artifactId>javax.annotation-api</artifactId>
  104. <version>${javax.annotation.version}</version>
  105. <scope>provided</scope> <!-- not needed at runtime -->
  106. </dependency>
  107. <dependency>
  108. <groupId>io.grpc</groupId>
  109. <artifactId>grpc-testing</artifactId>
  110. <scope>test</scope>
  111. </dependency>
  112. <dependency>
  113. <groupId>com.google.protobuf</groupId>
  114. <artifactId>protobuf-java</artifactId>
  115. <version>${protobuf.version}</version>
  116. </dependency>
  117. <dependency>
  118. <groupId>org.apache.commons</groupId>
  119. <artifactId>commons-text</artifactId>
  120. <version>${commons.text.version}</version>
  121. </dependency>
  122. <dependency>
  123. <groupId>org.apache.commons</groupId>
  124. <artifactId>commons-collections4</artifactId>
  125. <version>${commons-collections4.version}</version>
  126. </dependency>
  127. <dependency>
  128. <groupId>junit</groupId>
  129. <artifactId>junit</artifactId>
  130. <version>${junit.version}</version>
  131. <scope>test</scope>
  132. </dependency>
  133. <dependency>
  134. <groupId>org.junit.jupiter</groupId>
  135. <artifactId>junit-jupiter-api</artifactId>
  136. <version>${junit.jupiter.version}</version>
  137. <scope>test</scope>
  138. </dependency>
  139. <dependency>
  140. <groupId>org.testcontainers</groupId>
  141. <artifactId>milvus</artifactId>
  142. <scope>test</scope>
  143. </dependency>
  144. <dependency>
  145. <groupId>org.testcontainers</groupId>
  146. <artifactId>junit-jupiter</artifactId>
  147. <scope>test</scope>
  148. </dependency>
  149. <dependency>
  150. <groupId>org.projectlombok</groupId>
  151. <artifactId>lombok</artifactId>
  152. <version>${lombok.version}</version>
  153. <scope>provided</scope>
  154. </dependency>
  155. <dependency>
  156. <groupId>com.squareup.okhttp3</groupId>
  157. <artifactId>okhttp</artifactId>
  158. <version>${okhttp.version}</version>
  159. </dependency>
  160. <dependency>
  161. <groupId>com.google.code.gson</groupId>
  162. <artifactId>gson</artifactId>
  163. <version>${gson.version}</version>
  164. </dependency>
  165. <dependency>
  166. <groupId>org.apache.commons</groupId>
  167. <artifactId>commons-pool2</artifactId>
  168. <version>${apache.commons.pool2.version}</version>
  169. </dependency>
  170. <dependency>
  171. <groupId>org.slf4j</groupId>
  172. <artifactId>slf4j-api</artifactId>
  173. <!-- <scope>provided</scope>-->
  174. <version>1.7.36</version>
  175. </dependency>
  176. </dependencies>
  177. <build>
  178. <plugins>
  179. <plugin>
  180. <groupId>org.apache.maven.plugins</groupId>
  181. <artifactId>maven-shade-plugin</artifactId>
  182. <version>${maven.shade.plugin.version}</version>
  183. <dependencies>
  184. <dependency>
  185. <groupId>io.github.edwgiz</groupId>
  186. <artifactId>log4j-maven-shade-plugin-extensions</artifactId>
  187. <version>${log4j.slf4j.version}</version>
  188. </dependency>
  189. </dependencies>
  190. <executions>
  191. <execution>
  192. <phase>package</phase>
  193. <goals>
  194. <goal>shade</goal>
  195. </goals>
  196. <configuration>
  197. <!-- <outputFile>target/milvus-sdk-java-new-shaded-${project.version}.jar</outputFile>-->
  198. <shadedArtifactAttached>true</shadedArtifactAttached>
  199. <promoteTransitiveDependencies>true</promoteTransitiveDependencies>
  200. <createSourcesJar>true</createSourcesJar>
  201. <createDependencyReducedPom>false</createDependencyReducedPom>
  202. <keepDependenciesWithProvidedScope>true</keepDependenciesWithProvidedScope>
  203. <filters>
  204. <filter>
  205. <artifact>*:*</artifact>
  206. <excludes>
  207. <exclude>META-INF/MANIFEST.MF</exclude>
  208. <exclude>META-INF/NOTICE*</exclude>
  209. <exclude>META-INF/LICENSE*</exclude>
  210. <exclude>META-INF/DEPENDENCIES</exclude>
  211. <exclude>META-INF/*.SF</exclude>
  212. <exclude>META-INF/*.DSA</exclude>
  213. <exclude>META-INF/*.RSA</exclude>
  214. </excludes>
  215. </filter>
  216. <filter>
  217. <artifact>com.fasterxml.jackson.core:*</artifact>
  218. <excludes>
  219. <exclude>META-INF/services/com.fasterxml.jackson.core.JsonFactory</exclude>
  220. <exclude>META-INF/services/com.fasterxml.jackson.core.ObjectCodec</exclude>
  221. </excludes>
  222. </filter>
  223. </filters>
  224. <relocations>
  225. <!-- ignore 1 -->
  226. <!-- <relocation>
  227. <pattern>com.fasterxml</pattern>
  228. <shadedPattern>${shaded.prefix}.com.fasterxml</shadedPattern>
  229. </relocation> -->
  230. <!-- <relocation>
  231. <pattern>com.alibaba</pattern>
  232. <shadedPattern>${shaded.prefix}.com.alibaba</shadedPattern>
  233. </relocation> -->
  234. <!-- <relocation>
  235. <pattern>org.apache.logging</pattern>
  236. <shadedPattern>${shaded.prefix}.org.apache.logging</shadedPattern>
  237. </relocation>
  238. <relocation>
  239. <pattern>org.codehaus</pattern>
  240. <shadedPattern>${shaded.prefix}.org.codehaus</shadedPattern>
  241. </relocation>
  242. <relocation>
  243. <pattern>javax.annotation</pattern>
  244. <shadedPattern>${shaded.prefix}.javax.annotation</shadedPattern>
  245. </relocation> -->
  246. <!-- ignore 2 -->
  247. <!-- <relocation>
  248. <pattern>org.jetbrains</pattern>
  249. <shadedPattern>${shaded.prefix}.org.jetbrains</shadedPattern>
  250. </relocation>
  251. <relocation>
  252. <pattern>org.projectlombok</pattern>
  253. <shadedPattern>${shaded.prefix}.org.projectlombok</shadedPattern>
  254. </relocation>
  255. <relocation>
  256. <pattern>org.tensorflow</pattern>
  257. <shadedPattern>${shaded.prefix}.org.tensorflow</shadedPattern>
  258. </relocation>
  259. <relocation>
  260. <pattern>org.checkerframework</pattern>
  261. <shadedPattern>${shaded.prefix}.org.checkerframework</shadedPattern>
  262. </relocation> -->
  263. <!-- <relocation>
  264. <pattern>org.slf4j</pattern>
  265. <shadedPattern>${shaded.prefix}.org.slf4j</shadedPattern>
  266. </relocation>
  267. <relocation>
  268. <pattern>org.apache.commons</pattern>
  269. <shadedPattern>${shaded.prefix}.org.apache.commons</shadedPattern>
  270. <excludes>
  271. <exclude>org.apache.commons.logging.**</exclude>
  272. </excludes>
  273. </relocation> -->
  274. <relocation>
  275. <pattern>com.google</pattern>
  276. <shadedPattern>${shaded.prefix}.com.google</shadedPattern>
  277. </relocation>
  278. <relocation>
  279. <pattern>io.grpc</pattern>
  280. <shadedPattern>${shaded.prefix}.io.grpc</shadedPattern>
  281. </relocation>
  282. <relocation>
  283. <pattern>okhttp3</pattern>
  284. <shadedPattern>${shaded.prefix}/okhttp3</shadedPattern>
  285. </relocation>
  286. <relocation>
  287. <pattern>google/</pattern>
  288. <shadedPattern>${shaded.prefix}.google.</shadedPattern>
  289. <includes>
  290. <include>**/*.proto</include>
  291. </includes>
  292. </relocation>
  293. <relocation>
  294. <pattern>io.netty</pattern>
  295. <shadedPattern>${shaded.prefix}.io.netty</shadedPattern>
  296. </relocation>
  297. <relocation>
  298. <pattern>okio</pattern>
  299. <shadedPattern>${shaded.prefix}.okio</shadedPattern>
  300. </relocation>
  301. </relocations>
  302. <transformers>
  303. <transformer implementation="io.github.edwgiz.log4j.maven.plugins.shade.transformer.Log4j2PluginCacheFileTransformer"></transformer>
  304. <transformer implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer"/>
  305. <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
  306. <manifestEntries>
  307. <Multi-Release>true</Multi-Release>
  308. </manifestEntries>
  309. </transformer>
  310. </transformers>
  311. </configuration>
  312. </execution>
  313. </executions>
  314. <configuration>
  315. <createDependencyReducedPom>true</createDependencyReducedPom>
  316. </configuration>
  317. </plugin>
  318. </plugins>
  319. </build>
  320. </project>