Java 执行 datax
import com.alibaba.datax.core.Engine;
import org.junit.Test;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
/**
* @Author:
* @descripition:
* @Date: 2021/7/27 15:35
* @Version 1.0
*/
public class DataxTest {
/**
* @Author
* @Description java 代码集成
* @param: args
* @Version 1.0
* @Date 2021/7/27 16:00
*/
public static void main(String[] args){
System.setProperty("datax.home", "D:\\project\\datax_v2\\datax");
String[] datxArgs = {"-job", "D:\\project\\datax_v2\\\\datax\\job\\job_01.json", "-mode", "standalone", "-jobid", "-1"};
try {
Engine.entry(datxArgs);
} catch (Throwable e) {
e.printStackTrace();
}
}
/**
* @Author
* @Description java 执行python任务
* @param:
* @Version 1.0
* @Date 2021/7/27 16:01
*/
@Test
public void method() throws IOException, InterruptedException {
System.out.println("start");
String windwcmd = "cmd /c python D:\\project\\datax_v2\\datax\\bin\\datax.py D:\\project\\datax_v2\\datax\\job\\job_01.json";
System.out.println(windwcmd);
Process process = Runtime.getRuntime().exec(windwcmd);
BufferedReader in = new BufferedReader(new InputStreamReader(process.getInputStream()));
String line;
while ((line = in.readLine()) != null){
System.out.println(line);
}
in.close();
process.waitFor();
System.out.println("end");
}
}
pom
<dependency>
<groupId>com.alibaba.datax</groupId>
<artifactId>datax-core</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.alibaba.datax</groupId>
<artifactId>streamreader</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.alibaba.datax</groupId>
<artifactId>streamwriter</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
jar包位置在datax 安装目录 plugin 文件夹里

浙公网安备 33010602011771号