DataX是阿里巴巴團隊開發的一個很好開源項目,但是他們對如何使用只提供了python命令啟動方式,這種方式對於只是想簡單的用下DataX的人來說很是友好,僅僅需要幾行代碼就可以運行,但是如果你需要在DataX上進行二次開發,那么用python來控制程序加顯得很沒有掌控力度,也不容易和別的模塊進行融合,今天來說下DataX純Java代碼的啟動方式,也順便來記錄一下以后想用的時候加能直接用了

先把測繪的代碼寫上 就一行。
突然想起來還有好多代碼沒敲完!!!!先寫到這,后面的下午6點前更新。
---------------------------------------------------
機器太差了,給mysql創建1000萬條數據一直創建不好,正好趁這個時間來繼續更新
這里面啟動的時候會加載兩個配置文件 一個是datax.py 另一個是 xxx.json
先說第一個 這是一個python格式的配置文件,如果我們用純java來啟動的話需要把這個配置轉換一下
轉換成Java格式大致就是下面這些
java
//JVM啟動參數
-server
-Xms1g
-Xmx1g
-Xms1g
-Xmx1g
-XX:+HeapDumpOnOutOfMemoryError
-XX:HeapDumpPath=/Users/xx/JavaProjects/DataX-master/core/src/main/log
-XX:+HeapDumpOnOutOfMemoryError
-XX:HeapDumpPath=/Users/xx/JavaProjects/DataX-master/core/src/main/log
//環境變量
-Dloglevel=info
-Dfile.encoding=UTF-8
-Dlogback.statusListenerClass=ch.qos.logback.core.status.NopStatusListener
-Djava.security.egd=file:///dev/urandom
-Ddatax.home=/Users/hongming/JavaProjects/DataX-master/core/src/main
-Dlogback.configurationFile=/Users/xx/JavaProjects/DataX-master/core/src/main/conf/logback.xml
-Dlog.file.name=c_main_bin_data_json
-classpath /Users/xx/JavaProjects/DataX-master/core/src/main/lib/*:.
com.alibaba.datax.core.Engine -mode standalone -jobid -1 -job /Users/xx/Downloads/datax-b/core/src/main/bin/job.json
這時候我們按照這個來配置一下環境變量
Run--》Edit Configurations
涉及到項目隱私 我就不貼圖了
配置如下
program arguments com.alibaba.datax.core.Engine -mode standalone -jobid -1 -job /Users/xx/Downloads/datax-b/core/src/main/bin/job.json
Environment variables
-Dloglevel=info
-Dfile.encoding=UTF-8
-Dlogback.statusListenerClass=ch.qos.logback.core.status.NopStatusListener
-Djava.security.egd=file:///dev/urandom
-Ddatax.home=/Users/hongming/JavaProjects/DataX-master/core/src/main
-Dlogback.configurationFile=/Users/xx/JavaProjects/DataX-master/core/src/main/conf/logback.xml
-Dlog.file.name=c_main_bin_data_json
-D去掉之后依次添加進去
比如 loglevel=info
module 選core
配置完成 點擊ok
然后這時候如果你點運行的話會告訴你插件加載失敗
我們來看看插件加載的路徑在哪
找了一圈 。發現在這個路徑下
com/alibaba/datax/core/util/container/CoreConstant.java
這里面是配置的全局變量和局部變量 這時候你把自己的插件
DATAX_PLUGIN_READER_HOME
DATAX_PLUGIN_WRITER_HOME
路徑修改為自己的
如果提示找不到 core.json的配置文件 那就把上面的
DATAX_CONF_PATH
修改成自己的
這時候如果你的json沒寫錯的話應該就沒什么問題了
可以接着往下開發了。
