DataX遇到的坑

今天在使用DataX的时候遇到一个小坑

在调度任务的时候出现以下错误

  File "datax.py", line 114
    print readerRef
          ^
SyntaxError: Missing parentheses in call to 'print'. Did you mean print(readerRef)?

是因为python的环境不匹配,修改python环境为2.7.5即可运行

按照以下步骤
rm -rf /usr/bin/python
rm -rf /usr/local/miniconda3/bin/python
ln -s /usr/bin/python2.7 /usr/local/miniconda3/bin/python
python --version
Python 2.7.5

但是会遇到一个问题,当修改了软连接之后启动不了3.8.5的环境

我们可以使用virtualenvwrapper 切换版本

pip install virtualenvwrapper

mkvirtualenv -p /usr/bin/python2 env27

可能会显示找不到mkvirtualenv命令
1.创建目录用来存放虚拟环境
    mkdir $HOME/.virtualenvs
2.在~/.bashrc中添加行:
    export WORKON_HOME=$HOME/.virtualenvs
    查看virtualenvwrapper.sh所在路径
    which virtualenvwrapper.sh
    文件生效
    source /usr/local/miniconda3/bin/virtualenvwrapper.sh
3.运行:
    source ~/.bashrc
    
mkvirtualenv -p /usr/bin/python2 env27
workon env27  # 进入Python2环境

deactivate #退出虚拟环境
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
对于Java DataX,可以按照以下步骤进行设置和运行: 1. 设置系统环境变量,指定DataX的安装目录。可以使用`System.setProperty("datax.home", dataXHome);`来设置。 2. 创建一个Java方法,例如`test111()`,在该方法中设置DataX的参数,并调用`Engine.entry(params)`来执行DataX任务。 3. 参数可以包括`-mode`(运行模式)、`-jobid`(任务ID)、`-job`(任务配置文件路径)等。根据具体情况进行设置。 4. 异常处理:使用`try-catch`块来捕获可能的异常,并进行相应的处理。 以下是一个示例代码片段,演示了如何设置DataX的参数并执行任务: ```java private static void test111(){ String[] params = {"-mode", "standalone", "-jobid", "-1", "-job", "D:\\DevelopSoftware\\datax\\datax20210506\\datax\\job\\job.json"}; System.setProperty("datax.home", "D:\\DevelopSoftware\\datax\\datax20210506\\datax"); try { Engine.entry(params); } catch (Throwable e) { e.printStackTrace(); } } ``` 除了以上代码示例,还可以使用`@Test`注解来创建测试用例并执行DataX任务,如下所示: ```java @Test public void case01() throws Throwable { // 准备表数据 prepareTable(); // 设置DataX参数并执行任务 String[] params = {"-mode", "standalone", "-jobid", "-1", "-job", "src/test/resources/csv2t.json"}; System.setProperty("datax.home", "../target/datax/datax"); Engine.entry(params); } ``` 请根据您的具体需求和环境,适配以上示例代码,以便正确设置和运行Java DataX任务。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值