172 lines
6.2 KiB
XML
172 lines
6.2 KiB
XML
<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">
|
|
<modelVersion>4.0.0</modelVersion>
|
|
|
|
<parent>
|
|
<groupId>org.mlflow</groupId>
|
|
<artifactId>mlflow-parent</artifactId>
|
|
<version>3.14.1-SNAPSHOT</version>
|
|
<relativePath>../pom.xml</relativePath>
|
|
</parent>
|
|
|
|
<artifactId>mlflow-client</artifactId>
|
|
<packaging>jar</packaging>
|
|
<name>MLflow Tracking API</name>
|
|
<url>http://mlflow.org</url>
|
|
<properties>
|
|
<mlflow.shade.packageName>org.mlflow_project</mlflow.shade.packageName>
|
|
</properties>
|
|
|
|
<dependencies>
|
|
<dependency>
|
|
<groupId>org.slf4j</groupId>
|
|
<artifactId>slf4j-api</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.apache.httpcomponents</groupId>
|
|
<artifactId>httpclient</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.google.protobuf</groupId>
|
|
<artifactId>protobuf-java</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.google.protobuf</groupId>
|
|
<artifactId>protobuf-java-util</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>commons-io</groupId>
|
|
<artifactId>commons-io</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.apache.commons</groupId>
|
|
<artifactId>commons-configuration2</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>io.opentelemetry.proto</groupId>
|
|
<artifactId>opentelemetry-proto</artifactId>
|
|
<!-- use 0.20.0 to be compatible with protobuf 3.19.6, we should upgrade later -->
|
|
<version>0.20.0-alpha</version>
|
|
</dependency>
|
|
|
|
<!-- Test dependencies -->
|
|
<dependency>
|
|
<groupId>org.testng</groupId>
|
|
<artifactId>testng</artifactId>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.slf4j</groupId>
|
|
<artifactId>slf4j-jdk14</artifactId>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.mockito</groupId>
|
|
<artifactId>mockito-core</artifactId>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
</dependencies>
|
|
|
|
<build>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-checkstyle-plugin</artifactId>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-javadoc-plugin</artifactId>
|
|
<configuration>
|
|
<sourcepath>${project.basedir}/src/main/java</sourcepath>
|
|
<excludePackageNames>com.databricks.api.proto.databricks:org.mlflow.scalapb_interface:org.mlflow.tracking.samples:org.mlflow.artifacts</excludePackageNames>
|
|
<groups>
|
|
<group>
|
|
<title>Tracking API</title>
|
|
<packages>org.mlflow.tracking:org.mlflow.tracking.*</packages>
|
|
</group>
|
|
</groups>
|
|
</configuration>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-source-plugin</artifactId>
|
|
</plugin>
|
|
|
|
<plugin>
|
|
<!--
|
|
We construct a comprehensive shaded artifact so that we do not require that downstream
|
|
clients pick particular versions of protobuf, guava, apache http, and apache commons.
|
|
-->
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-shade-plugin</artifactId>
|
|
<configuration>
|
|
<minimizeJar>false</minimizeJar>
|
|
<shadedArtifactAttached>false</shadedArtifactAttached>
|
|
<artifactSet>
|
|
<includes>
|
|
<include>com.google.protobuf:protobuf-java</include>
|
|
<include>com.google.protobuf:protobuf-java-util</include>
|
|
<include>org.apache.httpcomponents:httpclient</include>
|
|
<include>com.google.guava:guava</include>
|
|
<include>com.google.code.gson:gson</include>
|
|
<include>commons-codec:commons-codec</include>
|
|
<include>commons-io:commons-io</include>
|
|
<include>commons-logging:commons-logging</include>
|
|
<include>org.apache.httpcomponents:httpcore</include>
|
|
<include>org.apache.commons:commons-configuration2</include>
|
|
<include>org.apache.commons:commons-lang3</include>
|
|
<include>org.apache.commons:commons-text</include>
|
|
<include>io.opentelemetry.proto:opentelemetry-proto</include>
|
|
</includes>
|
|
</artifactSet>
|
|
<relocations>
|
|
<relocation>
|
|
<pattern>com.google</pattern>
|
|
<shadedPattern>${mlflow.shade.packageName}.google</shadedPattern>
|
|
</relocation>
|
|
<relocation>
|
|
<pattern>org.apache.commons</pattern>
|
|
<shadedPattern>${mlflow.shade.packageName}.apachecommons</shadedPattern>
|
|
</relocation>
|
|
<relocation>
|
|
<pattern>org.apache.http</pattern>
|
|
<shadedPattern>${mlflow.shade.packageName}.apachehttp</shadedPattern>
|
|
</relocation>
|
|
<relocation>
|
|
<!-- We have to move this package as it conflicts with other Databricks jars. -->
|
|
<pattern>com.databricks.api.proto.databricks</pattern>
|
|
<shadedPattern>${mlflow.shade.packageName}.databricks</shadedPattern>
|
|
</relocation>
|
|
<relocation>
|
|
<pattern>io.opentelemetry</pattern>
|
|
<shadedPattern>${mlflow.shade.packageName}.opentelemetry</shadedPattern>
|
|
</relocation>
|
|
</relocations>
|
|
<transformers>
|
|
<transformer implementation="org.apache.maven.plugins.shade.resource.DontIncludeResourceTransformer">
|
|
<resources>
|
|
<resource>public-suffix-list.txt</resource>
|
|
<resource>log4j.properties</resource>
|
|
<resource>.proto</resource>
|
|
</resources>
|
|
</transformer>
|
|
</transformers>
|
|
</configuration>
|
|
<executions>
|
|
<execution>
|
|
<phase>package</phase>
|
|
<goals>
|
|
<goal>shade</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
<profiles>
|
|
<profile>
|
|
<id>do-sign</id>
|
|
</profile>
|
|
</profiles>
|
|
</project>
|