Back to home page

OSCL-LXR

 
 

    


0001 <?xml version="1.0" encoding="UTF-8"?>
0002 <!--
0003   ~ Licensed to the Apache Software Foundation (ASF) under one or more
0004   ~ contributor license agreements.  See the NOTICE file distributed with
0005   ~ this work for additional information regarding copyright ownership.
0006   ~ The ASF licenses this file to You under the Apache License, Version 2.0
0007   ~ (the "License"); you may not use this file except in compliance with
0008   ~ the License.  You may obtain a copy of the License at
0009   ~
0010   ~    http://www.apache.org/licenses/LICENSE-2.0
0011   ~
0012   ~ Unless required by applicable law or agreed to in writing, software
0013   ~ distributed under the License is distributed on an "AS IS" BASIS,
0014   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
0015   ~ See the License for the specific language governing permissions and
0016   ~ limitations under the License.
0017   -->
0018 
0019 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
0020          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
0021   <modelVersion>4.0.0</modelVersion>
0022   <parent>
0023     <groupId>org.apache.spark</groupId>
0024     <artifactId>spark-parent_2.12</artifactId>
0025     <version>3.0.0</version>
0026     <relativePath>../../pom.xml</relativePath>
0027   </parent>
0028 
0029   <artifactId>spark-catalyst_2.12</artifactId>
0030   <packaging>jar</packaging>
0031   <name>Spark Project Catalyst</name>
0032   <url>http://spark.apache.org/</url>
0033   <properties>
0034     <sbt.project.name>catalyst</sbt.project.name>
0035   </properties>
0036 
0037   <dependencies>
0038     <dependency>
0039       <groupId>org.scala-lang</groupId>
0040       <artifactId>scala-reflect</artifactId>
0041     </dependency>
0042     <dependency>
0043       <groupId>org.scala-lang.modules</groupId>
0044       <artifactId>scala-parser-combinators_${scala.binary.version}</artifactId>
0045     </dependency>
0046 
0047     <dependency>
0048       <groupId>org.apache.spark</groupId>
0049       <artifactId>spark-core_${scala.binary.version}</artifactId>
0050       <version>${project.version}</version>
0051     </dependency>
0052     <dependency>
0053       <groupId>org.apache.spark</groupId>
0054       <artifactId>spark-core_${scala.binary.version}</artifactId>
0055       <version>${project.version}</version>
0056       <type>test-jar</type>
0057       <scope>test</scope>
0058     </dependency>
0059     <dependency>
0060       <groupId>org.apache.spark</groupId>
0061       <artifactId>spark-tags_${scala.binary.version}</artifactId>
0062     </dependency>
0063 
0064     <!--
0065       This spark-tags test-dep is needed even though it isn't used in this module, otherwise testing-cmds that exclude
0066       them will yield errors.
0067     -->
0068     <dependency>
0069       <groupId>org.apache.spark</groupId>
0070       <artifactId>spark-tags_${scala.binary.version}</artifactId>
0071       <type>test-jar</type>
0072       <scope>test</scope>
0073     </dependency>
0074     <dependency>
0075       <groupId>org.mockito</groupId>
0076       <artifactId>mockito-core</artifactId>
0077       <scope>test</scope>
0078     </dependency>
0079 
0080     <dependency>
0081       <groupId>org.apache.spark</groupId>
0082       <artifactId>spark-unsafe_${scala.binary.version}</artifactId>
0083       <version>${project.version}</version>
0084     </dependency>
0085     <dependency>
0086       <groupId>org.apache.spark</groupId>
0087       <artifactId>spark-sketch_${scala.binary.version}</artifactId>
0088       <version>${project.version}</version>
0089     </dependency>
0090     <dependency>
0091       <groupId>org.scalacheck</groupId>
0092       <artifactId>scalacheck_${scala.binary.version}</artifactId>
0093       <scope>test</scope>
0094     </dependency>
0095     <dependency>
0096       <groupId>org.codehaus.janino</groupId>
0097       <artifactId>janino</artifactId>
0098     </dependency>
0099     <dependency>
0100       <groupId>org.codehaus.janino</groupId>
0101       <artifactId>commons-compiler</artifactId>
0102     </dependency>
0103     <dependency>
0104       <groupId>org.antlr</groupId>
0105       <artifactId>antlr4-runtime</artifactId>
0106     </dependency>
0107     <dependency>
0108       <groupId>commons-codec</groupId>
0109       <artifactId>commons-codec</artifactId>
0110     </dependency>
0111     <dependency>
0112       <groupId>com.univocity</groupId>
0113       <artifactId>univocity-parsers</artifactId>
0114       <type>jar</type>
0115     </dependency>
0116     <dependency>
0117       <groupId>org.apache.arrow</groupId>
0118       <artifactId>arrow-vector</artifactId>
0119     </dependency>
0120   </dependencies>
0121   <build>
0122     <outputDirectory>target/scala-${scala.binary.version}/classes</outputDirectory>
0123     <testOutputDirectory>target/scala-${scala.binary.version}/test-classes</testOutputDirectory>
0124     <plugins>
0125       <!--
0126            This plugin forces the generation of jar containing catalyst test classes,
0127            so that the tests classes of external modules can use them. The two execution profiles
0128            are necessary - first one for 'mvn package', second one for 'mvn test-compile'. Ideally,
0129            'mvn compile' should not compile test classes and therefore should not need this.
0130            However, a closed due to "Cannot Reproduce" Maven bug (https://issues.apache.org/jira/browse/MNG-3559)
0131            causes the compilation to fail if catalyst test-jar is not generated. Hence, the
0132            second execution profile for 'mvn test-compile'.
0133       -->
0134       <plugin>
0135         <groupId>org.apache.maven.plugins</groupId>
0136         <artifactId>maven-jar-plugin</artifactId>
0137         <executions>
0138           <execution>
0139             <id>prepare-test-jar</id>
0140             <phase>test-compile</phase>
0141             <goals>
0142               <goal>test-jar</goal>
0143             </goals>
0144           </execution>
0145         </executions>
0146       </plugin>
0147       <plugin>
0148         <groupId>org.scalatest</groupId>
0149         <artifactId>scalatest-maven-plugin</artifactId>
0150         <configuration>
0151           <argLine>-ea -Xmx4g -Xss4m -XX:ReservedCodeCacheSize=${CodeCacheSize} -Dio.netty.tryReflectionSetAccessible=true</argLine>
0152         </configuration>
0153       </plugin>
0154       <plugin>
0155         <groupId>org.antlr</groupId>
0156         <artifactId>antlr4-maven-plugin</artifactId>
0157         <executions>
0158           <execution>
0159             <goals>
0160               <goal>antlr4</goal>
0161             </goals>
0162           </execution>
0163         </executions>
0164         <configuration>
0165           <visitor>true</visitor>
0166           <sourceDirectory>../catalyst/src/main/antlr4</sourceDirectory>
0167           <treatWarningsAsErrors>true</treatWarningsAsErrors>
0168         </configuration>
0169       </plugin>
0170       <plugin>
0171         <groupId>org.codehaus.mojo</groupId>
0172         <artifactId>build-helper-maven-plugin</artifactId>
0173         <executions>
0174           <execution>
0175             <id>add-sources</id>
0176             <phase>generate-sources</phase>
0177             <goals>
0178               <goal>add-source</goal>
0179             </goals>
0180             <configuration>
0181               <sources>
0182                 <source>src/main/scala-${scala.binary.version}</source>
0183               </sources>
0184             </configuration>
0185           </execution>
0186         </executions>
0187       </plugin>
0188     </plugins>
0189   </build>
0190 
0191   <profiles>
0192     <profile>
0193       <id>scala-2.13</id>
0194       <dependencies>
0195         <dependency>
0196           <groupId>org.scala-lang.modules</groupId>
0197           <artifactId>scala-parallel-collections_${scala.binary.version}</artifactId>
0198         </dependency>
0199       </dependencies>
0200     </profile>
0201   </profiles>
0202 </project>