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>