学习 Presto(六):源码环境搭建

环境

操作系统:macOS 10.13.4,官方要求 Mac OS X 或 Linux

Java 版本:Java 8 Update 172,官方要求 Java 8 Update 64 及以上

Maven 版本:3.3.9,官方要求 3.3.9 及以上

源码下载

Presto GitHub 地址:https://github.com/prestodb/presto

git clone https://github.com/prestodb/presto.git  

看 Presto 0.166 版本源代码,切换到 0.166 tag:

git tag 0.166  

编译

编译需要下载大量 JAR 包,如果从 Maven 中央仓库下载,考虑到国内的网络环境,建议切换到国内 Maven 仓库

以阿里云为例,编辑 ~/.m2/settings.xml 文件,添加镜像:

<mirror>  
    <id>aliyun</id>
    <mirrorOf>*</mirrorOf>
    <name>aliyun</name>
    <url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>  

切换到 Presto 工程目录下,执行构建:

./mvnw clean install -DskipTests

构建需要一段时间,可以先去喝杯🍵

IntelliJ IDEA 配置

官方推荐使用 IntelliJ IDEA 开发,在导入工程之后,还需要一些额外的工作

打卡 Run/Configuration Configurations 窗口,新建一个 Appliction 配置:

  • Main Class: com.facebook.presto.server.PrestoServer
  • VM Options: -ea -XX:+UseG1GC -XX:G1HeapRegionSize=32M -XX:+UseGCOverheadLimit -XX:+ExplicitGCInvokesConcurrent -Xmx2G -Dconfig=etc/config.properties -Dlog.levels-file=etc/log.properties
  • Working directory: $MODULE_DIR$
  • Use classpath of module: presto-main

IDEA Configuration

如果需要修改配置,配置文件在:presto-main/etc 目录下