trino-363下载编译运行记录

1.下载源码

github上下载trino-363的源码,地址为https://github.com/trinodb/trino,记得切换Tags为363,然后点击下载.zip文件

2.编译

①需要的环境:

  • Mac OS X or Linux
  • Java 11.0.11+, 64-bit
  • Docker

②编译过程

因为公司的服务器不能连接外网,这里只能在windows下编译把项目需要的jar包弄到私服上去,这里我在windows下用gitbash编译,然后有几个模块总是编译不成功,然后放到idea中,通过maven下载依赖的jar包自动下载到私服中,然后在linux下在trino-363目录下运行 ./mvnw clean install -DskipTests 注意这里会报错误,.git 目录不存在。解决方案是在根目录的pom.xml文件中加入这个。

<pluginManagement>
        <plugins>
            <plugin>
                <groupId>pl.project13.maven</groupId>
                <artifactId>git-commit-id-plugin</artifactId>
                <configuration>
                    <skip>true</skip>
                </configuration>
            </plugin>
        </plugins>
</pluginManagement>

③注意事项

(1)在编译过程中我发现需要下载metadata.xml文件,可是服务器不能连外网,导致这里卡了很久。一次编译花费的时间超过半小时,我从网上找了很多解决方案,最后只有 ./mvnw clean install -DskipTests -o 有用,注意这里必须在服务器上已经下载好了依赖,才能采用离线编译的方法。就是第一次编译的时间要花很久,后面就可以采用离线编译了。

(2)在配置动态数据源,然后编译时,报错一个module顺序不对,这个好改,直接按照提示把顺序改了就行(这里其实也可以通过pom.xml文件让他不检查顺序,但是我这样改快一点)。然后还有一个麻烦的事,就是代码风格不对仍然编译不了,这里我网上找了很多办法都不行。最后去trino社区提问,幸好有人回答了我,也解决了这个问题。解决方案是在根目录的pom.xml文件中加上这个

<properties>
    <air.check.skip-all>true</air.check.skip-all>
    <air.check.skip-basic>${air.check.skip-all}</air.check.skip-basic>
    <air.check.skip-extended>${air.check.skip-all}</air.check.skip-extended>
</properties>

3.运行

编译好了怎么运行呢,这是一个问题,于是我从官网https://trino.io/上找到了可以运行的jar包。然后我按照官网上的办法运行成功。可是我该怎么运行自己编译打包的东西呢,我先是写脚本把打包好的东西按照官网上下载后的那种路径组织一下(这个好多呀),我写cp命令到脚本一个一个复制,然后有个jar包找不到,我用find / -name *.jar找它,然后我发现了这个父目录和官网上下载下来的是一样的,终于不用写脚本拷贝了!然后就是按照官网上的配置etc文件夹下面的东西。然后成功连接上了postgresql数据库!

编译好的可运行文件的目录为trino-363/core/trino-server/target/trino-server-363/,用bin/launcher run 命令运行即可

4.udf函数

参照官网,然后在pom.xml文件中加入这个,用mvn clean compile assembly:assembly将依赖的jar包一起打包成一个大的jar

<build>
        <sourceDirectory>src/main/java</sourceDirectory>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-assembly-plugin</artifactId>
                <version>2.5.3</version>
                <configuration>
                    <descriptorRefs>
                        <descriptorRef>jar-with-dependencies</descriptorRef>
                    </descriptorRefs>
                </configuration>
            </plugin>

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.1</version>
            </plugin>
        </plugins>
</build>

然后在trino-server-363文件夹下的plugin文件夹下创建一个新的目录udf,将这个大的jar包放到这个目录下,重启trino就好了。

5.动态配置数据源

参考https://blog.csdn.net/z275598733/article/details/119218079就可以了

6.如果有任何问题欢迎与我交流

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
trino-server 是一款开放源代码的分布式 SQL 查询引擎。要下载 trino-server,首先需要访问官方网站(https://trino.io/)。在网站的下载页面上,可以找到 trino-server 的最新版本和相关的下载链接。 下载 trino-server 有两种方式。首先,可以直接下载编译的二进制发行版。这些发行版为各种操作系统提供了编译好的二进制文件,包括 Linux、MacOS 和 Windows。下载适用于目标操作系统的二进制发行版,然后解压缩到希望安装 trino-server 的目录。 第二种方式是通过源代码自行构建 trino-server。这需要在本地设置开发环境,并确保安装了必要的依赖项。通过从 GitHub 上克隆 trino-server 仓库,并使用构建工具(例如 Maven)构建项目,可以编译生成 trino-server 的可执行文件。构建完成后,可将生成的二进制文件拷贝到目标位置,即可完成下载和安装。 无论是下载编译的二进制发行版还是通过源代码自行构建 trino-server,一旦下载完成,还需要进行一些配置工作。这包括编辑配置文件以指定必要的参数,如节点数量、端口号等。配置完成后,可以通过命令行启动 trino-server,然后使用相应的客户端工具连接和查询 trino-server。 总而言之,下载 trino-server 可以通过访问官方网站,并选择下载编译的二进制发行版或通过源代码自行构建。下载后,需要进行配置并启动 trino-server,之后即可使用 trino-server 进行 SQL 查询操作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值