| <?xml version="1.0" encoding="UTF-8"?> |
| <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/xsd/maven-4.0.0.xsd"> |
| <modelVersion>4.0.0</modelVersion> |
| <parent> |
| <groupId>org.apache.hugegraph</groupId> |
| <artifactId>hugegraph-toolchain</artifactId> |
| <version>${revision}</version> |
| <relativePath>../pom.xml</relativePath> |
| </parent> |
| |
| <artifactId>hugegraph-loader</artifactId> |
| <packaging>jar</packaging> |
| |
| <name>${project.artifactId}</name> |
| <url>https://github.com/apache/incubator-hugegraph-toolchain/tree/master/hugegraph-loader</url> |
| <description> |
| hugegraph-loader is a customizable command line utility for loading small to medium size graph datasets |
| into the HugeGraph database from multiple data sources with various input formats. |
| </description> |
| |
| <scm> |
| <url>https://github.com/hugegraph/hugegraph-loader</url> |
| <connection>https://github.com/hugegraph/hugegraph-loader</connection> |
| <developerConnection>https://github.com/hugegraph/hugegraph-loader |
| </developerConnection> |
| </scm> |
| |
| <properties> |
| <release.name>${project.artifactId}</release.name> |
| <final.name>${release.name}-${project.version}</final.name> |
| <assembly.dir>${project.basedir}/assembly</assembly.dir> |
| <assembly.descriptor.dir>${assembly.dir}/descriptor</assembly.descriptor.dir> |
| <assembly.static.dir>${assembly.dir}/static</assembly.static.dir> |
| </properties> |
| |
| <dependencies> |
| <dependency> |
| <groupId>org.apache.spark</groupId> |
| <artifactId>spark-core_${scala.version}</artifactId> |
| <version>${spark.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.spark</groupId> |
| <artifactId>spark-sql_${scala.version}</artifactId> |
| <version>${spark.version}</version> |
| <exclusions> |
| <exclusion> |
| <artifactId>antlr4-runtime</artifactId> |
| <groupId>org.antlr</groupId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| |
| <dependency> |
| <groupId>com.ververica</groupId> |
| <artifactId>flink-connector-mysql-cdc</artifactId> |
| <version>${flinkcdc.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.flink</groupId> |
| <artifactId>flink-java</artifactId> |
| <version>${flink.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.flink</groupId> |
| <artifactId>flink-streaming-java_${scala.version}</artifactId> |
| <version>${flink.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.flink</groupId> |
| <artifactId>flink-table-api-java-bridge_${scala.version}</artifactId> |
| <version>${flink.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.flink</groupId> |
| <artifactId>flink-table-planner-blink_${scala.version}</artifactId> |
| <version>${flink.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.flink</groupId> |
| <artifactId>flink-clients_${scala.version}</artifactId> |
| <version>${flink.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.flink</groupId> |
| <artifactId>flink-runtime-web_${scala.version}</artifactId> |
| <version>${flink.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>com.baidu.hugegraph</groupId> |
| <artifactId>hugegraph-client</artifactId> |
| <version>2.0.1</version> |
| <exclusions> |
| <exclusion> |
| <groupId>com.google.guava</groupId> |
| <artifactId>guava</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| <dependency> |
| <groupId>commons-io</groupId> |
| <artifactId>commons-io</artifactId> |
| <version>2.7</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.commons</groupId> |
| <artifactId>commons-lang3</artifactId> |
| <version>3.9</version> |
| </dependency> |
| <dependency> |
| <groupId>org.codehaus.groovy</groupId> |
| <artifactId>groovy-all</artifactId> |
| <version>2.4.6</version> |
| </dependency> |
| <dependency> |
| <groupId>com.beust</groupId> |
| <artifactId>jcommander</artifactId> |
| <version>1.78</version> |
| </dependency> |
| <dependency> |
| <groupId>org.simpleflatmapper</groupId> |
| <artifactId>sfm-csv</artifactId> |
| <version>8.2.1</version> |
| </dependency> |
| <dependency> |
| <groupId>com.google.guava</groupId> |
| <artifactId>guava</artifactId> |
| <version>29.0-jre</version> |
| </dependency> |
| |
| <!-- hadoop dependency --> |
| <dependency> |
| <groupId>org.apache.hadoop</groupId> |
| <artifactId>hadoop-common</artifactId> |
| <version>3.2.4</version> |
| <exclusions> |
| <exclusion> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-api</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-log4j12</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>log4j</groupId> |
| <artifactId>log4j</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>javax.ws.rs</groupId> |
| <artifactId>jsr311-api</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>com.sun.jersey</groupId> |
| <artifactId>jersey-server</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>com.sun.jersey</groupId> |
| <artifactId>jersey-core</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>com.sun.jersey</groupId> |
| <artifactId>jersey-servlet</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>com.sun.jersey</groupId> |
| <artifactId>jersey-json</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.apache.commons</groupId> |
| <artifactId>commons-compress</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hadoop</groupId> |
| <artifactId>hadoop-hdfs-client</artifactId> |
| <version>2.8.5</version> |
| </dependency> |
| <!-- |
| <dependency> |
| <groupId>com.baidu.inf.hadoop</groupId> |
| <artifactId>libdfs-java</artifactId> |
| <version>2.0.5</version> |
| </dependency> |
| --> |
| <dependency> |
| <groupId>org.apache.hadoop</groupId> |
| <artifactId>hadoop-mapred</artifactId> |
| <version>0.22.0</version> |
| <scope>test</scope> |
| <exclusions> |
| <exclusion> |
| <groupId>org.apache.hadoop</groupId> |
| <artifactId>hadoop-common</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.apache.commons</groupId> |
| <artifactId>commons-compress</artifactId> |
| <version>1.21</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.httpcomponents</groupId> |
| <artifactId>httpclient</artifactId> |
| <version>4.5.13</version> |
| </dependency> |
| <dependency> |
| <groupId>org.tukaani</groupId> |
| <artifactId>xz</artifactId> |
| <version>1.8</version> |
| </dependency> |
| <dependency> |
| <groupId>mysql</groupId> |
| <artifactId>mysql-connector-java</artifactId> |
| <version>8.0.28</version> |
| </dependency> |
| <dependency> |
| <groupId>org.postgresql</groupId> |
| <artifactId>postgresql</artifactId> |
| <version>42.4.1</version> |
| </dependency> |
| <dependency> |
| <groupId>com.microsoft.sqlserver</groupId> |
| <artifactId>mssql-jdbc</artifactId> |
| <version>7.2.0.jre8</version> |
| </dependency> |
| <dependency> |
| <groupId>com.oracle</groupId> |
| <artifactId>ojdbc8</artifactId> |
| <version>12.2.0.1</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hive</groupId> |
| <artifactId>hive-exec</artifactId> |
| <version>3.1.2</version> |
| <exclusions> |
| <exclusion> |
| <groupId>log4j</groupId> |
| <artifactId>log4j</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-api</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-log4j12</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.apache.logging.log4j</groupId> |
| <artifactId>log4j-slf4j-impl</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.apache.logging.log4j</groupId> |
| <artifactId>log4j-web</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.apache.hadoop</groupId> |
| <artifactId>hadoop-hdfs</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.apache.hadoop</groupId> |
| <artifactId>hadoop-yarn-registry</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.apache.hadoop</groupId> |
| <artifactId>hadoop-yarn-server-resourcemanager</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.apache.calcite.avatica</groupId> |
| <artifactId>avatica</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.apache.calcite</groupId> |
| <artifactId>calcite-core</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.apache.calcite</groupId> |
| <artifactId>calcite-druid</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.codehaus.groovy</groupId> |
| <artifactId>groovy-all</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>com.sun.jersey</groupId> |
| <artifactId>jersey-core</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>com.sun.jersey</groupId> |
| <artifactId>jersey-client</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>com.sun.jersey</groupId> |
| <artifactId>jersey-server</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>com.sun.jersey</groupId> |
| <artifactId>jersey-json</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>com.sun.jersey.contribs</groupId> |
| <artifactId>jersey-guice</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.apache.parquet</groupId> |
| <artifactId>parquet-hadoop-bundle</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.apache.parquet</groupId> |
| <artifactId>parquet-column</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.apache.thrift</groupId> |
| <artifactId>libfb303</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>com.fasterxml.jackson.core</groupId> |
| <artifactId>*</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| </dependencies> |
| |
| <profiles> |
| <profile> |
| <id>unit</id> |
| <activation> |
| <activeByDefault>true</activeByDefault> |
| </activation> |
| <properties> |
| <test-classes>**/UnitTestSuite.java</test-classes> |
| </properties> |
| </profile> |
| <profile> |
| <id>file</id> |
| <activation> |
| <activeByDefault>true</activeByDefault> |
| </activation> |
| <properties> |
| <source_type>file</source_type> |
| <store_path>files</store_path> |
| <test-classes>**/FileLoadTest.java</test-classes> |
| </properties> |
| </profile> |
| <profile> |
| <id>hdfs</id> |
| <activation> |
| <activeByDefault>false</activeByDefault> |
| </activation> |
| <properties> |
| <source_type>hdfs</source_type> |
| <!-- same as hdfs://localhost:8020/files --> |
| <store_path>/files</store_path> |
| <test-classes>**/HDFSLoadTest.java</test-classes> |
| </properties> |
| </profile> |
| <profile> |
| <id>jdbc</id> |
| <activation> |
| <activeByDefault>false</activeByDefault> |
| </activation> |
| <properties> |
| <test-classes>**/JDBCLoadTest.java</test-classes> |
| </properties> |
| </profile> |
| <profile> |
| <id>release</id> |
| <build> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-source-plugin</artifactId> |
| <version>2.2.1</version> |
| <executions> |
| <execution> |
| <id>attach-sources</id> |
| <goals> |
| <goal>jar-no-fork</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-javadoc-plugin</artifactId> |
| <version>2.9.1</version> |
| <executions> |
| <execution> |
| <id>attach-javadocs</id> |
| <goals> |
| <goal>jar</goal> |
| </goals> |
| </execution> |
| </executions> |
| <configuration> |
| <additionalJOptions> |
| <additionalJOption>-Xdoclint:none</additionalJOption> |
| </additionalJOptions> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-gpg-plugin</artifactId> |
| <version>1.5</version> |
| <executions> |
| <execution> |
| <id>sign-artifacts</id> |
| <phase>verify</phase> |
| <goals> |
| <goal>sign</goal> |
| </goals> |
| </execution> |
| </executions> |
| <configuration> |
| <!-- Prevent `gpg` from using pinentry programs --> |
| <gpgArguments> |
| <arg>--pinentry-mode</arg> |
| <arg>loopback</arg> |
| </gpgArguments> |
| </configuration> |
| </plugin> |
| </plugins> |
| </build> |
| </profile> |
| </profiles> |
| |
| <build> |
| <plugins> |
| <plugin> |
| <artifactId>maven-compiler-plugin</artifactId> |
| <version>3.1</version> |
| <configuration> |
| <source>${compiler.source}</source> |
| <target>${compiler.target}</target> |
| <compilerArguments> |
| <Xmaxerrs>500</Xmaxerrs> |
| </compilerArguments> |
| <compilerArgs> |
| <arg>-Xlint:unchecked</arg> |
| </compilerArgs> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-assembly-plugin</artifactId> |
| <version>2.4</version> |
| <executions> |
| <execution> |
| <id>assembly-hugegraph-loader</id> |
| <phase>package</phase> |
| <goals> |
| <goal>single</goal> |
| </goals> |
| <configuration> |
| <attach>false</attach> |
| <appendAssemblyId>false</appendAssemblyId> |
| <outputDirectory>${project.basedir}</outputDirectory> |
| <descriptor>${assembly.descriptor.dir}/assembly.xml</descriptor> |
| <finalName>${final.name}</finalName> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <artifactId>maven-antrun-plugin</artifactId> |
| <executions> |
| <execution> |
| <phase>package</phase> |
| <goals> |
| <goal>run</goal> |
| </goals> |
| <configuration> |
| <tasks> |
| <echo file="${project.basedir}/dist.sh"> |
| tar -zcvf \ |
| ${project.basedir}/${final.name}.tar.gz ${final.name} || exit 1 |
| rm -f ${project.basedir}/dist.sh |
| echo -n "hugegraph-loader tar.gz available at: " |
| echo "${project.basedir}/${final.name}.tar.gz" |
| </echo> |
| <exec executable="${shell-executable}" |
| dir="${project.basedir}" failonerror="true"> |
| <arg line="./dist.sh"/> |
| </exec> |
| </tasks> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <artifactId>maven-clean-plugin</artifactId> |
| <version>3.0.0</version> |
| <configuration> |
| <filesets> |
| <fileset> |
| <directory>${project.basedir}</directory> |
| <includes> |
| <include>*.tar.gz</include> |
| <include>${final.name}/**</include> |
| </includes> |
| <followSymlinks>false</followSymlinks> |
| </fileset> |
| <fileset> |
| <directory>${final.name}</directory> |
| </fileset> |
| </filesets> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>org.jacoco</groupId> |
| <artifactId>jacoco-maven-plugin</artifactId> |
| <version>0.8.4</version> |
| <executions> |
| <execution> |
| <id>pre-unit-test</id> |
| <goals> |
| <goal>prepare-agent</goal> |
| </goals> |
| </execution> |
| <execution> |
| <id>post-unit-test</id> |
| <phase>test</phase> |
| <goals> |
| <goal>report</goal> |
| </goals> |
| <configuration> |
| <outputDirectory> |
| ${project.build.directory} |
| </outputDirectory> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.codehaus.mojo</groupId> |
| <artifactId>properties-maven-plugin</artifactId> |
| <version>1.0.0</version> |
| <executions> |
| <execution> |
| <phase>generate-resources</phase> |
| <goals> |
| <goal>write-project-properties</goal> |
| </goals> |
| <configuration> |
| <outputFile> |
| ${project.build.testOutputDirectory}/profile.properties |
| </outputFile> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-resources-plugin</artifactId> |
| <version>2.7</version> |
| <configuration> |
| <encoding>UTF-8</encoding> |
| <nonFilteredFileExtensions> |
| <nonFilteredFileExtension>parquet</nonFilteredFileExtension> |
| </nonFilteredFileExtensions> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-surefire-plugin</artifactId> |
| <version>2.20</version> |
| <configuration> |
| <includes> |
| <include>${test-classes}</include> |
| </includes> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-checkstyle-plugin</artifactId> |
| <version>3.1.0</version> |
| <configuration> |
| <configLocation>../checkstyle.xml</configLocation> |
| <encoding>UTF-8</encoding> |
| <consoleOutput>true</consoleOutput> |
| <failsOnError>true</failsOnError> |
| <linkXRef>false</linkXRef> |
| <includeTestSourceDirectory>false</includeTestSourceDirectory> |
| </configuration> |
| <executions> |
| <execution> |
| <id>validate</id> |
| <phase>validate</phase> |
| <goals> |
| <goal>check</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| </plugins> |
| |
| <testResources> |
| <testResource> |
| <directory>src/test/resources/</directory> |
| <filtering>true</filtering> |
| </testResource> |
| </testResources> |
| </build> |
| </project> |