dremio 24.3 版本构建的一些问题
dremio 24.3 社区版代码提供了,从官方文档来看,构建与以前不太一样了,以下是构建中一些问题说明
主要问题
- jdk 需要同时包含jdk8 以及jdk11,
- maven 配置toolchains
- WARNING: Failed to export metrics.Server responded with gRPC status code 2.Error message: Failed to connect to localhost/127.0.0. 1:4317
解决方法
- 对于多jdk 的安装可以使用二进制程序,比如我使用的mac 我使用了sdkman 这个工具管理多jdk
- toolchains 配置 (~/.m2/toolchains.xml)
我使用sdskman 的配置
<?xml version="1.0" encoding="UTF-8"?>
<toolchains>
<toolchain>
<type>jdk</type>
<provides>
<version>1.8</version>
<vendor>zulu</vendor>
</provides>
<configuration>
<jdkHome><sdkman path>/candidates/java/8.0.382-zulu</jdkHome>
</configuration>
</toolchain>
<toolchain>
<type>jdk</type>
<provides>
<version>11</version>
<vendor>zulu</vendor>
</provides>
<configuration>
<jdkHome><sdkman path>/candidates/java/11.0.20-zulu</jdkHome>
</configuration>
</toolchain>
</toolchains>
- Failed to export metrics.Server responded with gRPC
实际上是因为新的依赖了opentelemetry-java-contrib 的maven-extension,位置在.mvn/extensions.xml
解决方法,一个是删除依赖,一个是配置环境变量export OTEL_TRACES_EXPORTER="none"
说明
整个构建还是比较顺利的,核心是jdk 版本以及maven toolchains
参考资料
https://github.com/dremio/dremio-oss/
https://maven.apache.org/guides/mini/guide-using-toolchains.html
https://sdkman.io/
https://github.com/open-telemetry/opentelemetry-java-contrib/tree/main/maven-extension
https://maven.apache.org/guides/mini/guide-using-extensions.html
https://maven.apache.org/extensions/index.html