github.com/treeverse/lakefs@v1.24.1-0.20240520134607-95648127bfb0/clients/java/pom.xml (about) 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/maven-v4_0_0.xsd"> 3 <modelVersion>4.0.0</modelVersion> 4 <groupId>io.lakefs</groupId> 5 <artifactId>sdk</artifactId> 6 <packaging>jar</packaging> 7 <name>sdk</name> 8 <version>0.1.0-SNAPSHOT</version> 9 <url>https://lakefs.io</url> 10 <description>lakeFS OpenAPI Java client</description> 11 <scm> 12 <connection>scm:git:git@github.com:treeverse/lakeFS.git</connection> 13 <developerConnection>scm:git:git@github.com:treeverse/lakeFS.git</developerConnection> 14 <url>https://github.com/treeverse/lakeFS</url> 15 </scm> 16 <parent> 17 <groupId>io.lakefs</groupId> 18 <artifactId>lakefs-parent</artifactId> 19 <version>0</version> 20 </parent> 21 22 <licenses> 23 <license> 24 <name>apache2</name> 25 <url>https://www.apache.org/licenses/LICENSE-2.0.html</url> 26 <distribution>repo</distribution> 27 </license> 28 </licenses> 29 30 <developers> 31 <developer> 32 <name>Treeverse lakeFS dev</name> 33 <email>services@treeverse.io</email> 34 <organization>lakefs.io</organization> 35 <organizationUrl>https://lakefs.io</organizationUrl> 36 </developer> 37 </developers> 38 39 <build> 40 <plugins> 41 <plugin> 42 <groupId>org.apache.maven.plugins</groupId> 43 <artifactId>maven-compiler-plugin</artifactId> 44 <version>3.8.1</version> 45 <configuration> 46 <fork>true</fork> 47 <meminitial>128m</meminitial> 48 <maxmem>512m</maxmem> 49 <compilerArgs> 50 <arg>-Xlint:all</arg> 51 <arg>-J-Xss4m</arg><!-- Compiling the generated JSON.java file may require larger stack size. --> 52 </compilerArgs> 53 </configuration> 54 </plugin> 55 <plugin> 56 <groupId>org.apache.maven.plugins</groupId> 57 <artifactId>maven-enforcer-plugin</artifactId> 58 <version>3.1.0</version> 59 <executions> 60 <execution> 61 <id>enforce-maven</id> 62 <goals> 63 <goal>enforce</goal> 64 </goals> 65 <configuration> 66 <rules> 67 <requireMavenVersion> 68 <version>2.2.0</version> 69 </requireMavenVersion> 70 </rules> 71 </configuration> 72 </execution> 73 </executions> 74 </plugin> 75 <plugin> 76 <groupId>org.apache.maven.plugins</groupId> 77 <artifactId>maven-surefire-plugin</artifactId> 78 <version>2.22.2</version> 79 <configuration> 80 <systemProperties> 81 <property> 82 <name>loggerPath</name> 83 <value>conf/log4j.properties</value> 84 </property> 85 </systemProperties> 86 <argLine>-Xms512m -Xmx1500m</argLine> 87 <parallel>methods</parallel> 88 <threadCount>10</threadCount> 89 </configuration> 90 <dependencies> 91 <!--Custom provider and engine for Junit 5 to surefire--> 92 <dependency> 93 <groupId>org.junit.jupiter</groupId> 94 <artifactId>junit-jupiter-engine</artifactId> 95 <version>${junit-version}</version> 96 </dependency> 97 </dependencies> 98 </plugin> 99 <plugin> 100 <artifactId>maven-dependency-plugin</artifactId> 101 <version>3.3.0</version> 102 <executions> 103 <execution> 104 <phase>package</phase> 105 <goals> 106 <goal>copy-dependencies</goal> 107 </goals> 108 <configuration> 109 <outputDirectory>${project.build.directory}/lib</outputDirectory> 110 </configuration> 111 </execution> 112 </executions> 113 </plugin> 114 <!-- attach test jar --> 115 <plugin> 116 <groupId>org.apache.maven.plugins</groupId> 117 <artifactId>maven-jar-plugin</artifactId> 118 <version>3.3.0</version> 119 <executions> 120 <execution> 121 <goals> 122 <goal>test-jar</goal> 123 </goals> 124 </execution> 125 </executions> 126 <configuration> 127 </configuration> 128 </plugin> 129 <plugin> 130 <groupId>org.codehaus.mojo</groupId> 131 <artifactId>build-helper-maven-plugin</artifactId> 132 <version>3.3.0</version> 133 <executions> 134 <execution> 135 <id>add_sources</id> 136 <phase>generate-sources</phase> 137 <goals> 138 <goal>add-source</goal> 139 </goals> 140 <configuration> 141 <sources> 142 <source>src/main/java</source> 143 </sources> 144 </configuration> 145 </execution> 146 <execution> 147 <id>add_test_sources</id> 148 <phase>generate-test-sources</phase> 149 <goals> 150 <goal>add-test-source</goal> 151 </goals> 152 <configuration> 153 <sources> 154 <source>src/test/java</source> 155 </sources> 156 </configuration> 157 </execution> 158 </executions> 159 </plugin> 160 <plugin> 161 <groupId>org.apache.maven.plugins</groupId> 162 <artifactId>maven-javadoc-plugin</artifactId> 163 <version>3.4.1</version> 164 <executions> 165 <execution> 166 <id>attach-javadocs</id> 167 <goals> 168 <goal>jar</goal> 169 </goals> 170 </execution> 171 </executions> 172 <configuration> 173 <doclint>none</doclint> 174 <tags> 175 <tag> 176 <name>http.response.details</name> 177 <placement>a</placement> 178 <head>Http Response Details:</head> 179 </tag> 180 </tags> 181 </configuration> 182 </plugin> 183 <plugin> 184 <groupId>org.apache.maven.plugins</groupId> 185 <artifactId>maven-source-plugin</artifactId> 186 <version>3.2.1</version> 187 <executions> 188 <execution> 189 <id>attach-sources</id> 190 <goals> 191 <goal>jar-no-fork</goal> 192 </goals> 193 </execution> 194 </executions> 195 </plugin> 196 <!-- Use spotless plugin to automatically format code, remove unused import, etc 197 To apply changes directly to the file, run `mvn spotless:apply` 198 Ref: https://github.com/diffplug/spotless/tree/main/plugin-maven 199 --> 200 <plugin> 201 <groupId>com.diffplug.spotless</groupId> 202 <artifactId>spotless-maven-plugin</artifactId> 203 <version>${spotless.version}</version> 204 <configuration> 205 <formats> 206 <!-- you can define as many formats as you want, each is independent --> 207 <format> 208 <!-- define the files to apply to --> 209 <includes> 210 <include>.gitignore</include> 211 </includes> 212 <!-- define the steps to apply to those files --> 213 <trimTrailingWhitespace/> 214 <endWithNewline/> 215 <indent> 216 <spaces>true</spaces> <!-- or <tabs>true</tabs> --> 217 <spacesPerTab>4</spacesPerTab> <!-- optional, default is 4 --> 218 </indent> 219 </format> 220 </formats> 221 <!-- define a language-specific format --> 222 <java> 223 <!-- no need to specify files, inferred automatically, but you can if you want --> 224 225 <!-- apply a specific flavor of google-java-format and reflow long strings --> 226 <googleJavaFormat> 227 <version>1.8</version> 228 <style>AOSP</style> 229 <reflowLongStrings>true</reflowLongStrings> 230 </googleJavaFormat> 231 232 <removeUnusedImports/> 233 <importOrder/> 234 235 </java> 236 </configuration> 237 </plugin> 238 </plugins> 239 </build> 240 241 <profiles> 242 <profile> 243 <id>sign-artifacts</id> 244 <build> 245 <plugins> 246 <plugin> 247 <groupId>org.apache.maven.plugins</groupId> 248 <artifactId>maven-gpg-plugin</artifactId> 249 <version>3.0.1</version> 250 <executions> 251 <execution> 252 <id>sign-artifacts</id> 253 <phase>verify</phase> 254 <goals> 255 <goal>sign</goal> 256 </goals> 257 </execution> 258 </executions> 259 </plugin> 260 </plugins> 261 </build> 262 </profile> 263 </profiles> 264 265 <dependencies> 266 <!-- @Nullable annotation --> 267 <dependency> 268 <groupId>com.google.code.findbugs</groupId> 269 <artifactId>jsr305</artifactId> 270 <version>3.0.2</version> 271 </dependency> 272 <dependency> 273 <groupId>com.squareup.okhttp3</groupId> 274 <artifactId>okhttp</artifactId> 275 <version>${okhttp-version}</version> 276 </dependency> 277 <dependency> 278 <groupId>com.squareup.okhttp3</groupId> 279 <artifactId>logging-interceptor</artifactId> 280 <version>${okhttp-version}</version> 281 </dependency> 282 <dependency> 283 <groupId>com.google.code.gson</groupId> 284 <artifactId>gson</artifactId> 285 <version>${gson-version}</version> 286 </dependency> 287 <dependency> 288 <groupId>io.gsonfire</groupId> 289 <artifactId>gson-fire</artifactId> 290 <version>${gson-fire-version}</version> 291 </dependency> 292 <dependency> 293 <groupId>org.apache.commons</groupId> 294 <artifactId>commons-lang3</artifactId> 295 <version>${commons-lang3-version}</version> 296 </dependency> 297 <dependency> 298 <groupId>jakarta.annotation</groupId> 299 <artifactId>jakarta.annotation-api</artifactId> 300 <version>${jakarta-annotation-version}</version> 301 <scope>provided</scope> 302 </dependency> 303 <dependency> 304 <groupId>org.openapitools</groupId> 305 <artifactId>jackson-databind-nullable</artifactId> 306 <version>${jackson-databind-nullable-version}</version> 307 </dependency> 308 309 <dependency> 310 <groupId>javax.ws.rs</groupId> 311 <artifactId>jsr311-api</artifactId> 312 <version>${jsr311-api-version}</version> 313 </dependency> 314 <dependency> 315 <groupId>javax.ws.rs</groupId> 316 <artifactId>javax.ws.rs-api</artifactId> 317 <version>${javax.ws.rs-api-version}</version> 318 </dependency> 319 <!-- test dependencies --> 320 <dependency> 321 <groupId>org.junit.jupiter</groupId> 322 <artifactId>junit-jupiter-engine</artifactId> 323 <version>${junit-version}</version> 324 <scope>test</scope> 325 </dependency> 326 <dependency> 327 <groupId>org.junit.platform</groupId> 328 <artifactId>junit-platform-runner</artifactId> 329 <version>${junit-platform-runner.version}</version> 330 <scope>test</scope> 331 </dependency> 332 <dependency> 333 <groupId>org.mockito</groupId> 334 <artifactId>mockito-core</artifactId> 335 <version>${mockito-core-version}</version> 336 <scope>test</scope> 337 </dependency> 338 </dependencies> 339 <properties> 340 <java.version>1.8</java.version> 341 <maven.compiler.source>${java.version}</maven.compiler.source> 342 <maven.compiler.target>${java.version}</maven.compiler.target> 343 <gson-fire-version>1.8.5</gson-fire-version> 344 <okhttp-version>4.10.0</okhttp-version> 345 <gson-version>2.9.1</gson-version> 346 <commons-lang3-version>3.12.0</commons-lang3-version> 347 <jackson-databind-nullable-version>0.2.6</jackson-databind-nullable-version> 348 <jakarta-annotation-version>1.3.5</jakarta-annotation-version> 349 <junit-version>5.9.1</junit-version> 350 <junit-platform-runner.version>1.9.1</junit-platform-runner.version> 351 <mockito-core-version>3.12.4</mockito-core-version> 352 <javax.ws.rs-api-version>2.1.1</javax.ws.rs-api-version> 353 <jsr311-api-version>1.1.1</jsr311-api-version> 354 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 355 <spotless.version>2.27.2</spotless.version> 356 </properties> 357 </project>