首页 > 其他分享 >Apache DolphinScheduler中ZooKeeperCDH不兼容问题的解决方案

Apache DolphinScheduler中ZooKeeperCDH不兼容问题的解决方案

时间:2024-02-18 12:22:48浏览次数:34  
标签:dolphinscheduler ZooKeeperCDH skip DolphinScheduler test Dmaven Apache true mvn

背景

看到Apache DolphinScheduler社区群有很多用户反馈和讨论这块问题,针对不兼容的问题,不仅需要自己重新编译各一个新包,而且因为默认是使用zk-3.8的配置,所以会出现不兼容问题。使用zk-3.4配置即可适配3.4.x

解决办法(一)

切换到项目源码的根路径中执行

mvn clean package -T 1C -Prelease '-Dmaven.test.skip=true' '-Dcheckstyle.skip=true' '-Dmaven.javadoc.skip=true' '-Dzk-3.4'

上述命令解释

mvn clean package  依次执行了clean、resources、compile、testResources、testCompile、test、jar(打包)等7个阶段。

指定多线程编译,可以增加~

拓展

-Dmaven.compile.fork=true 表示开启多线程
mvn -T 4 install -- will use 4 threads
mvn -T 1C install -- will use 1 thread per available CPU core
mvn clean package -T 1C -Dmaven.compile.fork=true
-Prelease 是 Maven Release Plugin 的配置

Maven中-DskipTests和-Dmaven.test.skip=true的区别

在使用mvn package进行编译、打包时,Maven会执行src/test/java中的JUnit测试用例,有时为了编译过程中跳过测试步骤,会使用参数-DskipTests和-Dmaven.test.skip=true,这两个参数的主要区别是:

-DskipTests,不执行测试用例,但编译测试用例类生成相应的class文件至target/test-classes下。
-Dmaven.test.skip=true,不执行测试用例,也不编译测试用例类。
-D参数
如果参数不存在于 pom.xml 文件中,它将被设置。如果参数已经存在 pom.xml 文件中,其值将被作为参数传递的值覆盖。

解决办法(二)

修改源码中的pom.xml配置文件

1、从github下载源码

直接访问https://github.com/,登陆之后搜索Apache DolphinScheduler!

file

在百度直接搜:

file

file

file

官网网址:
https://github.com/apache/dolphinscheduler

选择 release版本
file

file

2、将下载好的zip包解压出来,并导入IDEA工具中

file

file

3、修改maven和jdk配置

file

file

4、MVN命令操作

根目录执行

mvn clean package -T 1C -Prelease '-Dmaven.test.skip=true' '-Dcheckstyle.skip=true' '-Dmaven.javadoc.skip=true' '-Dzk-3.4'

报错如下

Failed to execute goal com.diffplug.spotless:spotless-maven-plugin:2.27.2:check (default) on project dolphinscheduler: The following files had format violations:

file

这个是问题没有因为没有格式化代码,所以在校验的时候不通过

根据上面的提示只需要执行下命令:mvn spotless:apply 就可以了

file

随后会刷屏,过一会就会出现如下图,完事了

file

再次根目录执行

mvn clean package -T 1C -Prelease '-Dmaven.test.skip=true' '-Dcheckstyle.skip=true' '-Dmaven.javadoc.skip=true' '-Dzk-3.4'

报错如下

file

从提示中可以看出来,com.github.eirslett:frontend-maven-plugin这个插件有问题

首先看看本地的maven仓库中,有没有把这个插件通过依赖下载出来

file

d:\IdeaProjects\dolphinscheduler-3.2.0-release\dolphinscheduler-ui\pom.xml文件中

标签全都删除掉,防止构建时用npm的方式下载插件。

file

再次根目录执行

mvn clean package -T 1C -Prelease '-Dmaven.test.skip=true' '-Dcheckstyle.skip=true' '-Dmaven.javadoc.skip=true' '-Dzk-3.4'

file

可以看到,已经编译成功了。找到打好包生成的目标文件,位置是:项目源码目录\dolphinscheduler-dist\target

我的位置是 D:\IdeaProjects\dolphinscheduler-3.2.0-release\dolphinscheduler-dist\target

file

5、修改源码中的依赖配置

我不知道配置文件的指定的位置,在IDEA开发工具中按ctrl+shift+f组合键, 在项目所有文件中搜索:zookeeper.version

file

d:\\IdeaProjects\\dolphinscheduler-3.2.0-release\\dolphinscheduler-bom\\pom.xml文件中找到

file

修改一下源码,修改后如下图所示

file

根目录执行

mvn clean package -T 1C -Prelease '-Dmaven.test.skip=true' '-Dcheckstyle.skip=true' '-Dmaven.javadoc.skip=true'

file

可以看到,已经编译成功了。希望本文能帮助更多用户解决问题,如果您对这个话题感兴趣,欢迎来社区交流!

本文由 白鲸开源 提供发布支持!

标签:dolphinscheduler,ZooKeeperCDH,skip,DolphinScheduler,test,Dmaven,Apache,true,mvn
From: https://www.cnblogs.com/DolphinScheduler/p/18019077

相关文章

  • Apache Ofbiz CVE-2023-51467 漏洞分析
    ApacheOfbizCVE-2023-51467漏洞分析漏洞影响范围ApacheOFBiz<18.12.10环境搭建启动docker环境vulhub-master/ofbiz/CVE-2023-51467克隆仓库,转到指定commit,用idea进行远程调试gitclonehttps://github.com/apache/ofbiz-framework.gitcdofbiz-frameworkgitche......
  • Apache Commons
    介绍官网:https://commons.apache.org/ApacheCommons是一个开源的Java项目,旨在提供一组通用的、可复用的Java组件。这些组件涵盖了多个领域,包括字符串操作、输入输出、集合操作、数学计算、命令行解析等。版本commons-lang和commons-lang3是两个不同的库。尽管它们都与Apa......
  • Apache配置不同目录绑定不同版本的PHP
    Apache配置不同目录绑定不同版本的PHPhttps://aka.ms/vs/17/release/vc_redist.x64.exehttps://www.apachelounge.com/download/VS17/binaries/httpd-2.4.58-310124-win64-VS17.ziphttps://www.apachelounge.com/download/VS17/modules/mod_fcgid-2.3.10-win64-VS17.zipDefine......
  • 当我们一起走过 2023|Apache Doris 年度时刻盘点
    2024年的第一个月已经彻底过去,2023年的回顾总结才姗姗来迟。在过去一年的大多数时间里,我们一直处于忙碌的状态中,紧锣密鼓的代码研发、高速推进的版本迭代、行程紧密的全国之行,众多社区用户与开发者皆是见证。越是忙碌,在年末的这场回顾就越难能可贵。在2024年开端,我们挑选出了......
  • Maven3.9.6 构建项目报错 Failed to execute goal org.apache.maven.plugins:maven-re
    在使用Maven3.9.6构建项目时,出现以下错误:[INFO][INFO]---resources:3.3.1:resources(default-resources)@service-sample---[INFO]Copying18resourcesfromsrc/main/javatotarget/classes[INFO]Copying15resourcesfromsrc/main/resourcestotarget/classes[IN......
  • Apache Ofbiz CVE-2020-9496
    ofbiz官网:https://ofbiz.apache.org/比较好的参考文章:https://blog.csdn.net/weixin_45728976/article/details/108872281影响版本ApacheOfbiz:<17.12.04漏洞原理:访问未授权的XML-RPC接口,构造XML-RPC协议请求格式,利用XML-RPC协议进行反序列化XML-RPC介绍:XML-RPC(XMLRemot......
  • Apache Ofbiz CVE-2021-26295分析
    漏洞影响版本:apache:ofbiz<17.12.06补丁代码:https://github.com/apache/ofbiz-framework/commit/af9ed4e/漏洞触发路径:https://ip:8443/webtools/control/SOAPService漏洞复现环境搭建:dockerpullandyjunghans/ofbizdockerrun-p8080:8080-p8443:8443andyjunghans/of......
  • 解决apache-tomcat安装成功之后运行startup.bat之后闪退
    一:概述通过startup.bat启动的流程是:startup->catalia->setclasspath->cataline,如果这3个bat文件里面有一个出现错误的话就是启动失败,为了找到一闪而过的原因,需要了解这三个bat文件里面是什么。二:具体说明<1>由于JDK环境变量配置错误tomcat在启动时,会读取环境变量的信息,需要一个CAT......
  • apache如何配置统一请求随机转发到不同服务
    ApacheHTTP服务器可以使用mod_proxy和mod_proxy_balancer模块来配置统一请求随机转发到不同的后端服务。这里提供一个基本的配置示例,展示如何实现随机负载均衡。首先,确保你的Apache服务器已经安装了mod_proxy和mod_proxy_balancer模块。在大多数Linux发行版中,这些模块默认是安装......
  • apache如何实现只转发到正常运行的服务
    要实现Apache只转发请求到正常运行的服务,可以通过使用mod_proxy和mod_proxy_balancer模块的健康检查(HealthCheck)功能来完成。这将允许Apache周期性地检查后端服务的健康状况,并仅将请求转发到那些响应正常的服务。下面是如何配置Apache以实现此功能的步骤:1.启用必要的模块:首先,确......