wayang
Used in:
components
- OverviewOverview
- VersionsVersions
- DependentsDependents
- DependenciesDependencies
<dependency> <groupId>org.apache.wayang</groupId> <artifactId>wayang</artifactId> <version>1.0.0</version> </dependency>
<?xml version="1.0" encoding="UTF-8"?> <!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. --> <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</groupId> <artifactId>apache</artifactId> <version>32</version> </parent> <groupId>org.apache.wayang</groupId> <artifactId>wayang</artifactId> <version>1.0.0</version> <packaging>pom</packaging> <name>Apache Wayang (incubating)</name> <description> Apache Wayang (incubating) is a tool to build platform-agnostic data processing apps and have them both optimized for and executed on multiple different execution platforms, such as Java Streams and Apache Spark. </description> <url>https://wayang.apache.org</url> <inceptionYear>2020</inceptionYear> <organization> <name>The Apache Software Foundation</name> <url>https://www.apache.org/</url> </organization> <licenses> <license> <name>Apache License, Version 2.0</name> <url>https://www.apache.org/licenses/LICENSE-2.0</url> <distribution>repo</distribution> <comments> Apache Wayang (incubating) is an effort undergoing incubation at The Apache Software Foundation (ASF), sponsored by the Apache Incubator PMC. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF. </comments> </license> </licenses> <scm> <connection>scm:git:https://gitbox.apache.org/repos/asf/incubator-wayang.git</connection> <developerConnection>scm:git:https://gitbox.apache.org/repos/asf/incubator-wayang.git</developerConnection> <url>https://github.com/apache/incubator-wayang</url> <tag>v1.0.0-rc5</tag> </scm> <issueManagement> <system>JIRA</system> <url>https://issues.apache.org/jira/browse/WAYANG</url> </issueManagement> <mailingLists> <mailingList> <name>Apache Wayang (incubating) Developer List</name> <subscribe>mailto:dev-subscribe@wayang.apache.org</subscribe> <unsubscribe>mailto:dev-unsubscribe@wayang.apache.org</unsubscribe> <post>mailto:dev@wayang.apache.org</post> <archive>http://mail-archives.apache.org/mod_mbox/wayang-dev/</archive> </mailingList> <mailingList> <name>Apache Wayang (incubating) Commits List</name> <subscribe>mailto:commits-subscribe@wayang.apache.org</subscribe> <unsubscribe>mailto:commits-unsubscribe@wayang.apache.org</unsubscribe> <post>mailto:commits@wayang.apache.org</post> <archive>http://mail-archives.apache.org/mod_mbox/wayang-commits/</archive> </mailingList> </mailingLists> <properties> <encoding>UTF-8</encoding> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.root>${basedir}</project.root> <dist.id>${project.artifactId}</dist.id> <jacoco.destfile>${project.build.directory}/jacoco.exec</jacoco.destfile> <maven.kotlin.skip>false</maven.kotlin.skip> <!-- Timestamp for the reproducible builds --> <project.build.outputTimestamp>2025-02-04T20:03:30Z</project.build.outputTimestamp> <scala.version>2.12.12</scala.version> <scala.mayor.version>2.12</scala.mayor.version> <spark.version>3.1.2</spark.version> <flink.version>1.20.0</flink.version> <java.version>11</java.version> <source.level>11</source.level> <maven.compiler.source>11</maven.compiler.source> <maven.compiler.target>11</maven.compiler.target> <maven.compiler.release>11</maven.compiler.release> <jaxb.version>2.2.11</jaxb.version> <java-activation.version>1.1.1</java-activation.version> <javax-annotation-api>1.3.2</javax-annotation-api> <assertj.version>3.17.2</assertj.version> <commons-io.version>2.5</commons-io.version> <guava.version>19.0</guava.version> <hamcrest.version>1.3</hamcrest.version> <jackson.version>2.10.2</jackson.version> <jacoco.version>0.8.5</jacoco.version> <jodatime.version>2.10.6</jodatime.version> <jsonpath.version>2.4.0</jsonpath.version> <junit5.version>5.6.1</junit5.version> <mockito.version>3.5.10</mockito.version> <mockk.version>1.10.0</mockk.version> <external.platforms.scope>provided</external.platforms.scope> <hadoop.version>3.1.2</hadoop.version> <!-- To be overridden by individual modules --> <java-module-name>org.apache.wayang.default</java-module-name> <code.coverage.project.folder>${basedir}/</code.coverage.project.folder> <code.coverage.overall.data.folder>${basedir}/target/aggregate.exec</code.coverage.overall.data.folder> </properties> <profiles> <profile> <!-- Include the external platforms in the build. --> <id>standalone</id> <properties> <external.platforms.scope>compile</external.platforms.scope> </properties> </profile> <profile> <!-- Profile to be activated when building the docs artifacts. --> <id>build-docs</id> <properties> <shared.resources>${project.build.directory}/shared-resources</shared.resources> <maven.main.skip>false</maven.main.skip> <maven.test.skip>false</maven.test.skip> <maven.install.skip>false</maven.install.skip> <maven.deploy.skip>false</maven.deploy.skip> <skipTests>false</skipTests> </properties> <dependencies> <dependency> <groupId>org.apache.wayang</groupId> <artifactId>wayang-resources</artifactId> <version>1.0.0</version> <type>zip</type> <optional>true</optional> </dependency> </dependencies> <build> <finalName>apache-${project.artifactId}-incubating-${project.version}</finalName> <plugins> <!-- Configures JavaDoc generation. --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> <executions> <execution> <id>aggregate-javadoc</id> <goals> <goal>aggregate-no-fork</goal> </goals> <phase>package</phase> </execution> </executions> </plugin> <plugin> <groupId>org.jfrog.buildinfo</groupId> <artifactId>artifactory-maven-plugin</artifactId> </plugin> </plugins> </build> </profile> <profile> <id>web-documentation</id> <modules> <module>wayang-docs</module> </modules> </profile> <profile> <!-- Perform steps to deploy Apache Wayang (incubating). --> <id>deployment</id> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-source-plugin</artifactId> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-gpg-plugin</artifactId> </plugin> </plugins> </build> </profile> <profile> <!-- Perform steps to deploy Apache Wayang (incubating). --> <id>deployment-dryrun</id> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-source-plugin</artifactId> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> </plugin> </plugins> </build> </profile> <profile> <!-- Profile to be run on the CI server, JARs JavaDocs --> <id>ci</id> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> <executions> <execution> <id>package-javadoc</id> <goals> <goal>jar</goal> </goals> <phase>package</phase> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-checkstyle-plugin</artifactId> <configuration> <configLocation>google_checks.xml</configLocation> <includes>**/*</includes> <excludes> **/.flattened-pom.xml,.git/**/*,target/**/*,**/target/**/*,.idea/**/*,**/spring.schemas,**/*.svg,mvnw,mvnw.cmd,**/*.graphml,work/**/* </excludes> <sourceDirectories>./</sourceDirectories> </configuration> <executions> <execution> <phase> validate </phase> <goals> <goal>check</goal> </goals> </execution> </executions> </plugin> </plugins> </build> </profile> <!-- Used to build Java 11+ --> <profile> <id>java11</id> <activation> <jdk>11</jdk> </activation> <properties> <java.version>11</java.version> <source.level>11</source.level> <maven.compiler.source>11</maven.compiler.source> <maven.compiler.target>11</maven.compiler.target> <maven.compiler.release>11</maven.compiler.release> <jaxb.version>2.2.11</jaxb.version> <java-activation.version>1.1.1</java-activation.version> <javax-annotation-api>1.3.2</javax-annotation-api> </properties> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-enforcer-plugin</artifactId> <executions> <execution> <id>enforce-maven-version</id> <goals> <goal>enforce</goal> </goals> <configuration> <rules> <requireJavaVersion> <version>11</version> </requireJavaVersion> </rules> </configuration> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> <configuration> <source>11</source> <detectJavaApiLink>false</detectJavaApiLink> </configuration> </plugin> </plugins> </build> </profile> <!-- Profile to be run before a release is executed, currently does the following: - Prevents thrid-party snapshot dependencies in projects --> <!-- TODO: This is actually automatically done by the maven-release-plugin:prepare goal Therefore it could be removed --> <profile> <id>pre-release</id> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-enforcer-plugin</artifactId> <executions> <execution> <id>enforce-no-third-party-snapshots</id> <goals> <goal>enforce</goal> </goals> <configuration> <rules> <requireReleaseDeps> <failWhenParentIsSnapshot>false</failWhenParentIsSnapshot> <excludes> <exclude>org.apache.wayang:*</exclude> </excludes> </requireReleaseDeps> </rules> </configuration> </execution> </executions> </plugin> </plugins> </build> </profile> <profile> <id>scala</id> <activation> <file> <exists>src/main/scala</exists> </file> </activation> <dependencyManagement> <dependencies> <dependency> <groupId>org.scala-lang</groupId> <artifactId>scala-library</artifactId> <version>${scala.version}</version> </dependency> </dependencies> </dependencyManagement> <build> <pluginManagement> <plugins> <plugin> <groupId>net.alchim31.maven</groupId> <artifactId>scala-maven-plugin</artifactId> <version>4.8.1</version> <executions> <execution> <id>compile-scala</id> <goals> <goal>compile</goal> <goal>testCompile</goal> </goals> <configuration> <scalaVersion>${scala.version}</scalaVersion> <sourceDir>${project.build.sourceDirectory}/../scala</sourceDir> <testSourceDir>${project.build.testSourceDirectory}/../scala</testSourceDir> </configuration> </execution> <execution> <id>add-scala-src</id> <phase>prepare-package</phase> <goals> <goal>add-source</goal> </goals> </execution> <!-- Getting strange CNFE errors: java.lang.NoClassDefFoundError: javax/tools/ToolProvider --> <!--execution> <id>generate-scaladoc</id> <goals> <goal>doc-jar</goal> </goals> </execution--> </executions> </plugin> </plugins> </pluginManagement> <plugins> <plugin> <groupId>net.alchim31.maven</groupId> <artifactId>scala-maven-plugin</artifactId> </plugin> <!-- <plugin>--> <!-- <artifactId>maven-jar-plugin</artifactId>--> <!-- </plugin>--> </plugins> </build> </profile> <profile> <id>scala-12</id> <activation> <file> <exists>scala_2.12</exists> </file> </activation> <properties> <scala.version>2.12.12</scala.version> <scala.mayor.version>2.12</scala.mayor.version> <spark.version>3.1.2</spark.version> </properties> <build> <plugins> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>build-helper-maven-plugin</artifactId> <executions> <execution> <id>adding-source-java-scala</id> <phase>generate-sources</phase> <goals> <goal>add-source</goal> </goals> <configuration> <sources> <source>../code/main/java</source> <source>src/main/java</source> </sources> </configuration> </execution> <execution> <id>adding-resources-scala-2.12</id> <phase>generate-resources</phase> <goals> <goal>add-resource</goal> </goals> <configuration> <resources> <resource> <directory> ../code/main/resources </directory> </resource> <resource> <directory> src/main/resources </directory> </resource> </resources> </configuration> </execution> <execution> <id>adding-test-source-java-scala</id> <phase>generate-test-sources</phase> <goals> <goal>add-test-source</goal> </goals> <configuration> <sources> <source>../code/test/java</source> <source>src/test/java</source> </sources> </configuration> </execution> <execution> <id>adding-test-resources-scala-2.12</id> <phase>generate-test-resources</phase> <goals> <goal>add-test-resource</goal> </goals> <configuration> <resources> <resource> <directory> ../code/test/resources </directory> </resource> <resource> <directory> src/test/resources </directory> </resource> </resources> </configuration> </execution> </executions> </plugin> <plugin> <groupId>net.alchim31.maven</groupId> <artifactId>scala-maven-plugin</artifactId> <executions> <execution> <id>add-source-scala</id> <goals> <goal>add-source</goal> </goals> <configuration> <sourceDir>../code/main/scala</sourceDir> <testSourceDir>../code/test/scala</testSourceDir> </configuration> </execution> </executions> </plugin> </plugins> </build> </profile> <profile> <id>antlr</id> <activation> <file> <exists>src/main/antlr4</exists> </file> </activation> <properties> <antlr.version>4.9.1</antlr.version> </properties> <build> <pluginManagement> <plugins> <!-- trigger run with mvn process-resouces; then see target/generated-sources/antlr4 --> <plugin> <groupId>org.antlr</groupId> <artifactId>antlr4-maven-plugin</artifactId> <version>${antlr.version}</version> <executions> <execution> <id>run-antlr</id> <goals> <goal>antlr4</goal> </goals> <configuration> <visitor>true</visitor> <sourceDirectory>${project.build.sourceDirectory}/../antlr4</sourceDirectory> </configuration> </execution> </executions> </plugin> </plugins> </pluginManagement> <plugins> <!-- trigger run with mvn process-resouces; then see target/generated-sources/antlr4 --> <plugin> <groupId>org.antlr</groupId> <artifactId>antlr4-maven-plugin</artifactId> </plugin> </plugins> </build> <dependencies> <dependency> <groupId>org.antlr</groupId> <artifactId>antlr4</artifactId> <version>${antlr.version}</version> <scope>provided</scope> </dependency> </dependencies> </profile> <profile> <id>add-dependencies</id> <build> <pluginManagement> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-dependency-plugin</artifactId> <version>3.1.2</version> <executions> <execution> <id>copy-dependencies</id> <phase>prepare-package</phase> <goals> <goal>copy-dependencies</goal> </goals> <configuration> <outputDirectory>${project.build.directory}/lib</outputDirectory> <overWriteReleases>false</overWriteReleases> <overWriteSnapshots>false</overWriteSnapshots> <overWriteIfNewer>true</overWriteIfNewer> </configuration> </execution> </executions> </plugin> </plugins> </pluginManagement> </build> </profile> <!-- Allows skipping of the pre-flight-check as needed when deploying on jenkins --> <profile> <id>skip-prerequisite-check</id> <activation> </activation> <build> <plugins> <!-- Make some additional properties available to simplify keeping some content up to date --> <plugin> <groupId>org.codehaus.gmaven</groupId> <artifactId>groovy-maven-plugin</artifactId> <version>2.1.1</version> <executions> <!-- Do some pre-build checks and report any findings to the user --> <execution> <id>prerequisite-check</id> <phase>validate</phase> <goals> <goal>execute</goal> </goals> <inherited>false</inherited> <configuration> <source> print "\nSkipping prerequisite-check\n\n" </source> </configuration> </execution> </executions> </plugin> </plugins> </build> </profile> <!-- Profile for linux (Self-Enabling) --> <profile> <id>os-unix</id> <activation> <os> <family>unix</family> </os> </activation> <properties> <os.suffix>linux</os.suffix> <os.classifier>linux-x86_64</os.classifier> </properties> </profile> <!-- Profile for mac (Self-Enabling) --> <profile> <id>os-mac</id> <activation> <os> <family>mac</family> </os> </activation> <properties> <os.suffix>mac</os.suffix> <os.classifier>mac-x86_64</os.classifier> </properties> </profile> <!-- profile for windows (Self-Enabling) --> <profile> <id>os-windows</id> <activation> <os> <family>windows</family> </os> </activation> <properties> <os.suffix>win</os.suffix> <os.classifier>windows-x86_64</os.classifier> </properties> </profile> <profile> <id>disable-java8-doclint</id> <activation> <jdk>[1.8,)</jdk> </activation> <properties> <additionalparam>-Xdoclint:none</additionalparam> </properties> </profile> <profile> <id>apache-release</id> <build> <finalName>apache-${project.artifactId}-incubating-${project.version}</finalName> <resources> <resource> <directory>src/main/resources</directory> </resource> <resource> <directory>${project.basedir}</directory> <includes> <include>DISCLAIMER</include> <include>LICENSE</include> <include>NOTICE</include> <include>RELEASE_NOTES</include> <include>README.md</include> </includes> </resource> </resources> <plugins> <!-- Create a source-release artifact that contains the fully buildable project directory source structure. This is the artifact which is the official subject of any release vote. --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-assembly-plugin</artifactId> <executions> <execution> <id>source-release-assembly</id> <phase>package</phase> <goals> <goal>single</goal> </goals> <configuration> <finalName>apache-${project.artifactId}-incubating-${project.version}</finalName> </configuration> </execution> </executions> </plugin> </plugins> </build> </profile> </profiles> <dependencyManagement> <dependencies> <dependency> <groupId>com.fasterxml.jackson</groupId> <artifactId>jackson-bom</artifactId> <version>${jackson.version}</version> <type>pom</type> <scope>import</scope> </dependency> <dependency> <groupId>org.junit</groupId> <artifactId>junit-bom</artifactId> <version>${junit5.version}</version> <type>pom</type> <scope>import</scope> </dependency> <!-- Logging --> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-bom</artifactId> <version>2.17.0</version> <scope>import</scope> <type>pom</type> </dependency> </dependencies> </dependencyManagement> <dependencies> <!-- Test --> <dependency> <groupId>org.junit.jupiter</groupId> <artifactId>junit-jupiter</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.junit.vintage</groupId> <artifactId>junit-vintage-engine</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.mockito</groupId> <artifactId>mockito-core</artifactId> <version>${mockito.version}</version> <scope>test</scope> </dependency> <dependency> <groupId>org.mockito</groupId> <artifactId>mockito-junit-jupiter</artifactId> <version>${mockito.version}</version> <scope>test</scope> </dependency> <dependency> <groupId>org.assertj</groupId> <artifactId>assertj-core</artifactId> <version>${assertj.version}</version> <scope>test</scope> </dependency> <!-- Coverage --> <!-- TODO: add the coverage elements --> </dependencies> <build> <finalName>apache-${project.artifactId}-${project.version}-incubating</finalName> <!-- Default versioned declarations of managed plugins to be overridden when the distribute profile is active. If this section was missing, Maven would complain about missing version numbers for executions without the profile active. --> <pluginManagement> <plugins> <plugin> <groupId>org.openclover</groupId> <artifactId>clover-maven-plugin</artifactId> <version>4.2.1</version> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-assembly-plugin</artifactId> <version>3.5.0</version> <configuration> <finalName>apache-${project.artifactId}-${project.version}-incubating</finalName> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-antrun-plugin</artifactId> <version>3.0.0</version> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.8.1</version> <configuration> <forceJavacCompilerUse>true</forceJavacCompilerUse> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-checkstyle-plugin</artifactId> <version>3.1.1</version> <dependencies> <dependency> <groupId>com.puppycrawl.tools</groupId> <artifactId>checkstyle</artifactId> <version>8.33</version> </dependency> </dependencies> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-dependency-plugin</artifactId> <version>3.1.2</version> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-deploy-plugin</artifactId> <version>3.0.0-M1</version> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-enforcer-plugin</artifactId> <version>3.0.0-M3</version> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-failsafe-plugin</artifactId> <version>2.19.1</version> <executions> <execution> <goals> <goal>integration-test</goal> <goal>verify</goal> </goals> </execution> </executions> <configuration> <trimStackTrace>false</trimStackTrace> <enableAssertions>true</enableAssertions> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <version>3.2.2</version> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> <version>3.3.0</version> <executions> <execution> <id>attach-javadocs</id> <goals> <goal>jar</goal> </goals> </execution> </executions> <configuration> <detectLinks>false</detectLinks> <detectJavaApiLink>true</detectJavaApiLink> <doclint>none</doclint> <!-- <additionalparam>-Xdoclint:none</additionalparam>--> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-source-plugin</artifactId> <version>3.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-surefire-plugin</artifactId> <version>3.0.0-M5</version> <configuration> <useSystemClassLoader>false</useSystemClassLoader> </configuration> </plugin> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>build-helper-maven-plugin</artifactId> <version>3.1.0</version> </plugin> <plugin> <groupId>org.jfrog.buildinfo</groupId> <artifactId>artifactory-maven-plugin</artifactId> <version>2.7.0</version> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-site-plugin</artifactId> <version>3.7</version> <configuration> </configuration> </plugin> </plugins> </pluginManagement> <plugins> <!-- Make some additional properties available to simplify keeping some content up to date --> <plugin> <groupId>org.codehaus.gmaven</groupId> <artifactId>groovy-maven-plugin</artifactId> <version>2.1.1</version> <executions> <!-- Do some pre-build checks and report any findings to the user --> <execution> <id>prerequisite-check</id> <phase>validate</phase> <goals> <goal>execute</goal> </goals> <inherited>false</inherited> <configuration> <source>${project.basedir}/src/main/script/prerequisiteCheck.groovy</source> </configuration> </execution> </executions> <dependencies> <dependency> <groupId>joda-time</groupId> <artifactId>joda-time</artifactId> <version>2.10.8</version> </dependency> </dependencies> </plugin> <!-- Fail the build if files don't have a valid header --> <plugin> <groupId>org.apache.rat</groupId> <artifactId>apache-rat-plugin</artifactId> <version>0.13</version> <executions> <execution> <id>license-check</id> <phase>verify</phase> <goals> <goal>check</goal> </goals> </execution> </executions> <configuration> <useMavenDefaultExcludes>true</useMavenDefaultExcludes> <!-- Make rat output the files with missing licensed directly into the build output (This way we don't have to look into the rat.txt to find out which ones) --> <consoleOutput>true</consoleOutput> <excludes> <!-- Git related files --> <exclude>**/.git/**</exclude> <exclude>**/.gitignore</exclude> <exclude>**/.gitmodules</exclude> <exclude>**/.github/actions/**</exclude> <!-- Maven related files --> <exclude>**/target/**</exclude> <exclude>target/**</exclude> <!-- Eclipse related files --> <exclude>**/.project</exclude> <exclude>**/.settings/**</exclude> <exclude>**/.classpath</exclude> <exclude>**/.factorypath</exclude> <!--RAT files--> <exclude>**/apache-rat-0.13/**</exclude> <!--Javadoc files--> <exclude>**/docs/**</exclude> <!-- IntelliJ related files --> <exclude>**/.idea/**</exclude> <exclude>**/*.iml</exclude> <exclude>**/*.yaml</exclude> <exclude>**/*.json</exclude> <exclude>**/*.log</exclude> <exclude>**/*.input</exclude> <exclude>**/*.svg</exclude> <exclude>**/Gemfile.lock</exclude> <exclude>**/.jekyll-cache/**</exclude> <exclude>**/README.md</exclude> <exclude>**/general-todos.md</exclude> <exclude>**/scala_1*</exclude> <exclude>**/*pb2.py</exclude> <exclude>**/.rat-excludes</exclude> <exclude>**/*.csv</exclude> <exclude>**/*.properties</exclude> </excludes> </configuration> </plugin> <!-- Fail the build if some dependency don't have a valid license --> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>license-maven-plugin</artifactId> <version>2.0.0</version> <executions> <execution> <id>license-check</id> <phase>verify</phase> <goals> <goal>aggregate-add-third-party</goal> </goals> </execution> </executions> <configuration> <licenseMerges> <licenseMerge>ASF 2.0 | The Apache Software License, Version 2.0 | Apache License, Version 2.0 | Apache 2.0 License | Apache License Version 2.0 | Apache 2.0 | Apache-2.0 | The Apache License, Version 2.0 | Apache License Version 2 | Apache 2 | http://www.apache.org/licenses/LICENSE-2.0.txt | Apache License 2.0 | Apache Software License - Version 2.0</licenseMerge> <licenseMerge>BSD 3-claus | 3-Clause BSD License | BSD 3 Clause License | BSD 3 Clause | BSD 3-Clause "New" or "Revised" License (BSD-3-Clause) | BSD licence | BSD | New BSD License | Revised BSD | The BSD 3-Clause License | The BSD License | The New BSD License | New BSD license | BSD 3-clause | BSD 3-Clause | BSD-3-Clause </licenseMerge> <licenseMerge>MIT | MIT License | The MIT License </licenseMerge> <licenseMerge>BSD 2-claus | BSD 2-Clause License | BSD 2-Clause | BSD-2-Clause</licenseMerge> <licenseMerge>HSQLDB | HSQLDB License, a BSD open source license</licenseMerge> <licenseMerge>Eclipse | EPL 2.0 | EPL 1.0 | Eclipse Public License, Version 2.0 | Eclipse Distribution License - v 1.0</licenseMerge> </licenseMerges> <includedLicenses> ASF 2.0 | BSD 2-claus | BSD 3-claus | MIT | CC0 | HSQLDB | PostgreSQL | Eclipse | Public Domain | iCal4j - License </includedLicenses> <failOnBlacklist>true</failOnBlacklist> <excludedGroups> org.apache.spark.*|org.apache.hadoop.*|org.apache.giraph.*|org.antlr.*|junit.*|org.graphchi.*|org.springframework.* </excludedGroups> <excludeTransitiveDependencies>true</excludeTransitiveDependencies> </configuration> </plugin> <!-- Generate the legally required text files in the jars --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-remote-resources-plugin</artifactId> <executions> <execution> <id>process-resource-bundles</id> <goals> <goal>process</goal> </goals> <configuration> <resourceBundles> <!-- Will generate META-INF/{DEPENDENCIES,LICENSE,NOTICE} --> <resourceBundle>org.apache.apache.resources:apache-jar-resource-bundle:1.7</resourceBundle> <!-- Will generate META-INF/DISCLAIMER --> <resourceBundle>org.apache.apache.resources:apache-incubator-disclaimer-resource-bundle:1.7</resourceBundle> </resourceBundles> <!-- Content in this directory will be appended to generated resources --> <appendedResourcesDirectory>${basedir}/src/remote-resources</appendedResourcesDirectory> </configuration> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-dependency-plugin</artifactId> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>${source.level}</source> <target>${source.level}</target> </configuration> <executions> <execution> <id>default-compile</id> <phase>none</phase> </execution> <execution> <id>default-testCompile</id> <phase>none</phase> </execution> <execution> <id>java-compile</id> <phase>compile</phase> <goals> <goal>compile</goal> </goals> </execution> <execution> <id>java-test-compile</id> <phase>test-compile</phase> <goals> <goal>testCompile</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <configuration> <useSystemClassLoader>false</useSystemClassLoader> <useFile>false</useFile> <includes> <include>**/*Tests.java</include> <include>**/*Test.java</include> </includes> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <configuration> <archive> <manifestEntries> <Implementation-Title>${project.name}</Implementation-Title> <Implementation-Version>${project.version}</Implementation-Version> <!--Automatic-Module-Name>${java-module-name}</Automatic-Module-Name--> </manifestEntries> </archive> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-source-plugin</artifactId> <executions> <execution> <id>attach-sources</id> <goals> <goal>jar</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> <configuration> <locale>en_US</locale> <breakiterator>true</breakiterator> <header>${project.name}</header> <source>${source.level}</source> <quiet>true</quiet> <javadocDirectory>${shared.resources}/javadoc</javadocDirectory> <overview>${shared.resources}/javadoc/overview.html</overview> <!-- copies doc-files subdirectory which contains image resources --> <docfilessubdirs>true</docfilessubdirs> <additionalOptions> <additionalOption>-Xdoclint:none</additionalOption> </additionalOptions> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-enforcer-plugin</artifactId> <version>3.0.0</version> <executions> <execution> <id>enforce-maven-version</id> <goals> <goal>enforce</goal> </goals> <configuration> <rules> <requireMavenVersion> <version>3.5.0</version> </requireMavenVersion> </rules> </configuration> </execution> </executions> </plugin> <plugin> <groupId>org.jacoco</groupId> <artifactId>jacoco-maven-plugin</artifactId> <version>0.8.3</version> <executions> <execution> <id>coverage-initialize</id> <goals> <goal>prepare-agent</goal> </goals> </execution> <execution> <id>coverage-report</id> <phase>post-integration-test</phase> <goals> <goal>report</goal> </goals> </execution> <!-- TODO addd the check to the minimum coverage --> <!-- <!– Threshold –>--> <!-- <execution>--> <!-- <id>coverage-check</id>--> <!-- <goals>--> <!-- <goal>check</goal>--> <!-- </goals>--> <!-- </execution>--> <execution> <id>report-aggregate</id> <phase>verify</phase> <goals> <goal>report-aggregate</goal> </goals> </execution> <execution> <id>merge-results</id> <phase>verify</phase> <goals> <goal>merge</goal> </goals> <configuration> <fileSets> <fileSet> <directory>${code.coverage.project.folder}</directory> <includes> <include>**/target/jacoco.exec</include> </includes> </fileSet> </fileSets> <destFile>${code.coverage.overall.data.folder}/aggregate.exec</destFile> </configuration> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-release-plugin</artifactId> <version>3.0.1</version> <configuration> <autoVersionSubmodules>true</autoVersionSubmodules> <autoResolveSnapshots>all</autoResolveSnapshots> <releaseProfiles>apache-release</releaseProfiles> <!--<pushChanges>false</pushChanges>--> <!--<dryRun>true</dryRun>--> <releaseVersion>1.0.0</releaseVersion> <updateWorkingCopyVersions>true</updateWorkingCopyVersions> <updateDependencies>true</updateDependencies> <tag>v1.0.0-rc5</tag> <scmReleaseCommitComment>@{prefix} prepare release 1.0.0</scmReleaseCommitComment> <tagNameFormat>apache-@{project.artifactId}-@{project.version}-incubating</tagNameFormat> <tagNameFormat>v${project.version}</tagNameFormat> </configuration> </plugin> </plugins> </build> <modules> <module>wayang-commons</module> <module>wayang-platforms</module> <module>wayang-api</module> <module>wayang-profiler</module> <module>wayang-plugins</module> <module>wayang-resources</module> <module>wayang-assembly</module> <module>wayang-ml4all</module> <module>wayang-applications</module> <module>wayang-benchmark</module> <module>wayang-tests-integration</module> <!--module>wayang-docs</module--> </modules> </project>