DataX學習指南(三)-- 程式打包
阿新 • • 發佈:2022-04-21
前面兩篇文章已經介紹了DataX的基本資訊及外掛開發,接下來就該介紹下如何將開發的程式打包執行起來。
開發手冊裡面已經說明了DataX原始碼編譯使用assembly
打包,打包命令如下:
mvn clean package -DskipTests assembly:assembly
所以pom.xml內需要加上assembly-plugin,同時package.xml內需要配上新增模組打包路徑資訊。
至此,dataX外掛打包所需的依賴就準備完畢了,接下來就是assembly打包了。如果你電腦沒有安裝MVN,且未配置MVN環境變數,你可以出門右轉了。慢走不送...
接下來就是在ideaJ內開啟控制檯,並執行“'mvn -U clean package assembly:assembly -Dmaven.test.skip=true”.
為了打包快速,可以將dataX父pom檔案內的模組都註釋掉,只留下需要打包的模組和公用模組
打包完成之後,將reader/writer複製到dataX->plugin對應目錄
接下來就是寫job.json啦,我這裡有個自己寫的oracle2pgsql.json.
{ "job": { "setting": { "speed": { "byte":10485760 }, "errorLimit": {"record": 0, "percentage": 0.02 } }, "content": [ { "reader": { "name": "oraclereader", "parameter": { "username": "LAW", "password": "LAW","column": ["TABLE_NAME","COLUMN_NAME","OBSOLETE_DATE"], "connection": [ { "table": ["APEX_030200.WWV_COLUMN_EXCEPTIONS"], "jdbcUrl": ["jdbc:oracle:thin:@//172.16.22.160:51600/ORCL"] } ] } }, "writer": { "name": "postgresqlwriter", "parameter": { "username": "postgres", "password": "pp!@#ABC!!", "column": [ "table_name", "column_name","obsolete_date"], "preSql": [ "delete from t_test" ], "connection": [ { "jdbcUrl": "jdbc:postgresql://172.16.22.158:55432/datax?useUnicode=true&characterEncoding=utf8", "table": [ "t_test" ] } ] } } } ] } }
可能看起來有些懵,可以去看上一篇,裡面讓你們複製的兩個檔案,這個檔案就是對應的reader/writer的job模板。
至於job模板內容格式,官方也給出了詳細的介紹,見 引數配置