首页 > 其他分享 >Azkaban在IDEA下debug环境搭建笔记

Azkaban在IDEA下debug环境搭建笔记

时间:2022-12-12 18:36:34浏览次数:73  
标签:java 3.88 IDEA azkaban workspace debug main Azkaban

1. 主要目的

在Windows下,使用IDEA开发工具,打开azkaban源代码的操作步骤的说明。

用于测试、开发环境搭建、源代码查看、二次开发。

在整个过程中,对相关的gradle构建工具、IDEA工具的操作及流程说明。新手可参考此文档能快速操作。

构建过程中,可能碰到的异常及处理方式。

2. 环境依赖

2.1. 安装git工具

下载并安装git工具。安装网址参考:​https://blog.csdn.net/mukes/article/details/115693833

2.2.IDEA的gradle配置

选择:文件-->设置...

Azkaban在IDEA下debug环境搭建笔记_gradle

2、配置Gradle用户主目录,如:D:/gradle/repository。

此目录为构建工具的本地库地址,用于存放下载后的jar文件。

Azkaban在IDEA下debug环境搭建笔记_本地调试_02

3.Azkaban开发环境构建

在window下操作。

3.1. 下载源码

3.1.1.git下载方式:

下载并安装git工具,参考:​https://blog.csdn.net/mukes/article/details/115693833

新建azkaban目录,如:azkaban_main,运行以下命令:

git clone https://github.com/azkaban/azkaban.git

3.1.2. 手工下载源代码方式:

下载地址:​https://codeload.github.com/azkaban/azkaban/tar.gz/refs/tags/3.88.0

右击,解压azkaban-3.88.0.tar.gz文件。可修改目录名为:azkaban-main。

解压后目录结构如下:

Azkaban在IDEA下debug环境搭建笔记_IntelliJ IDEA_03

2.2. IDEA工具加载azkaban源码

2.2.1.新建源项目

在IDEA工具中,选择菜单:文件-->新建-->从现有源项目...

Azkaban在IDEA下debug环境搭建笔记_IntelliJ IDEA_04

2.2.2.选择build.gradle文件

在弹开的窗口中,选择D:\workspace\azkaban-3.88.0\azkaban-main\build.gradle文件。

Azkaban在IDEA下debug环境搭建笔记_本地调试_05

2.2.3. 工程创建完成

加截完成后,IDEA的效果如下:

Azkaban在IDEA下debug环境搭建笔记_azkaban_06

2.3. Gradle构建项目

2.3.1. 展开Gradle操作界面

点击IDEA的右上角“Gradle”,展开窗口,界面如下:

Azkaban在IDEA下debug环境搭建笔记_源码阅读_07

2.3.2. 点击“重新加载所有Gradle项目”

运行完成后,将出现“Negative time”异常。先忽略此异常,继续下一步操作。

2.3.3. 配置阿里云镜像仓库

打开build.gradle文件,为加快依赖文件的下载,配置阿里云镜像仓库,添加如下圈圈的配置内容:

Azkaban在IDEA下debug环境搭建笔记_gradle_08

2.3.4. 下载工程所需要的jar文件。

右击项目,选择“刷新Gradle依赖项”,下载工程所需要的jar文件。

所依赖的文件比较下,下载需要一定的耗时。

下载的jar文件(约1.3G的大小),取决于build.gradle文件中的配置项:“ext.deps”。

Azkaban在IDEA下debug环境搭建笔记_源码阅读_09

2.4. IDEA运行环境配置

2.4.1. 统一各模块的配置文件

1、在D:\workspace\azkaban-3.88.0\azkaban-main下,新建目录conf,用于存放统一的配置文件。

2、将D:\workspace\azkaban-3.88.0\azkaban-main\azkaban-web-server\src\main\resources\conf下的文件,复制到D:\workspace\azkaban-3.88.0\azkaban-main\conf\下。

2.4.2. AzkabanWebServer.java的运行参数

1、在IDEA中,右击AzkabanWebServer.java类,进行运行属性的设置。

azkaban-web-server\src\main\java\azkaban\webapp\AzkabanWebServer.java

2、VM options:

-Djava.io.tmpdir=D:\workspace\azkaban-3.88.0\azkaban-main\temp -Dlog4j.cnotallow=file:D:\workspace\azkaban-3.88.0\azkaban-main\conf\log4j.properties -Dserverpath=D:\workspace\azkaban-3.88.0\azkaban-main\azkaban-web-server\build\install\azkaban-web-server

3、Program arguments:

-conf D:\workspace\azkaban-3.88.0\azkaban-main\conf

2.4.3. AzkabanExecServer.java的运行参数

1、在IDEA中,右击AzkabanExecServer.java类,进行运行属性的设置。

azkaban-exec-server\src\main\java\azkaban\webapp\AzkabanExecServer.java

2、VM options:

-Djava.io.tmpdir=D:\workspace\azkaban-3.88.0\azkaban-main\temp -Dlog4j.cnotallow=file:D:\workspace\azkaban-3.88.0\azkaban-main\conf\log4j.properties -Dserverpath=D:\workspace\azkaban-3.88.0\azkaban-main\azkaban-exec-server\build\install\azkaban-exec-server

3、Program arguments:

-conf D:\workspace\azkaban-3.88.0\azkaban-main\conf

2.4.4.配置文件azkaban.properties的修改

修改:D:\workspace\azkaban-3.88.0\azkaban-main\azkaban.properties。

# WEB工具的根目录路径配置
web.resource.dir=E:\\azkaban-3.88.0\\azkaban-main\\azkaban-web-server\\src\\web
# 时区配置
default.timezone.id=Asia/Shanghai

...

# 数据库连接配置
database.type=mysql
mysql.port=3308
mysql.host=10.133.11.11
mysql.database=azkaban
mysql.user=root
mysql.password=jian@1122
mysql.numcnotallow=100

2.5. 构建过程中的异常及处理

2.5.1. mysql数据库版本差异而导致运行异常。

azkaban自带的mysql jdbc驱动,版本是:5.1.28,而我本地安装的mysql,是8.0.30版本。

数据库版本或驱动,引起的异常类型有:

java.math.BigInteger cannot be cast to java.lang.Long异常报错解决方法

Caused by: java.io.IOException: CreateProcess error=2, 系统找不到指定的文件

处理方式:

1、修改build.gradle文件

mysqlConnector       : 'mysql:mysql-connector-java:5.1.28',
改为:
mysqlConnector : 'mysql:mysql-connector-java:8.0.16',

2、重新构建gradle项目

Azkaban在IDEA下debug环境搭建笔记_IntelliJ IDEA_10

2.5.2. 构建环境异常

构建环境没配置好,或依赖包没下载,提示的异常:

1、package org.assertj.core.util does not exist

2、java: 找不到符号符号:类 xxx位置:程序包 xxx.xxx

标签:java,3.88,IDEA,azkaban,workspace,debug,main,Azkaban
From: https://blog.51cto.com/u_15891458/5931263

相关文章

  • 如何在Idea中使用Tomcat
    在Idea中使用Tomcat有两种方式:集成本地的Tomcat,即可在idea中启动Tomcat,不需要打包好再放到tomcat中的webapps目录中(1)点击AddConfiguration...(2)在弹窗中点击左上角......
  • idea远程调试线上jar包
    有时候本地代码没问题但在线上运行会报错,这时候可以使用idea的remote功能调试线上jar包步骤1:点击设置  步骤2:新建remote  步骤3:配置服务器ip和端口并复制生成......
  • IDEA集成Git
    1.新建项目,绑定git随便新建一个项目,将刚才在Git拉下来的项目文件,全部copy到创建的项目文件中   刷新IDEA:2.修改文件,使用IDEA操作Git   add之后变成绿色,然......
  • idea重新启动四个选项
    idea重新启动四个选项如果你只更改了资源,而没有修改代码,那么选第一个,更新资源。如果你只修改了代码和资源,那么选第二个如果你修改了配置文件,或者改动很多,希望重新部署......
  • IDEA UI插件
    https://blog.csdn.net/zhaoxiace/article/details/124974225简单来说  MaterialThemeUI官方文档:https://www.material-theme.com/docs/introduction/ 经过测试......
  • webstorm | Outdated | IDEA License Server Detected过期的问题(自己搭建认证服务器的
    自己搭建认证服务器的教程这里我只是个搬运工,归档员。方法一、具体的参加链接:​​http://idea.lanyus.com/​​自己根据上面的链接地址,可以自行构建自己的LicenseServer。......
  • Task :react-native-clipboard_clipboard:compileDebugJavaWithJavac FAILED
    Task:react-native-clipboard_clipboard:compileDebugJavaWithJavacFAILED月深夜微凉于 2022-09-0217:57:19 发布830收藏文章标签:androidandroi......
  • compileDebugJavaWithJavac异常处理
    compileDebugJavaWithJavac异常处理 本人是引进module之后出现的问题解决办法:在androidstudioterminal输入命令gradlewcompileDebugJavaWithJavac在输入命令gra......
  • IDEA配置的经典实践
    1、合并import包名IDEA设置禁止自动合并import的包名:File--Settings--Editor--CodeStyle--Java--Imports,将图示区域中的数值修改大一点并应用。 ......
  • HarmonyOS实现登录页面(二)相关api的创建(IDEA)
    创建步骤如何在IDEA里面创建相关程序创建成功后,上来一顿删除文件直到如下图新建3个包commoncontrollermodel在cotroller下面建类ApiController在model......