前言:
Kettle提供一些API,Java通过调用这些API去执行Kettle作业,转换。
第一步:搭建Kettle运行环境
从data-integration\lib\目录下复制部分核心jar包出来,导入到java项目(jdk1.8)中。
所需jar包如下(不要忘了数据库连接驱动):
2. 代码示例(作业,转换,资源库)
ackage com.staroon.kettle.exec;
import org.pentaho.di.core.KettleEnvironment;
import org.pentaho.di.core.database.DatabaseMeta;
import org.pentaho.di.core.logging.LogLevel;
import org.pentaho.di.core.util.EnvUtil;
import org.pentaho.di.job.Job;
import org.pentaho.di.job.JobMeta;
import org.pentaho.di.repository.RepositoryDirectoryInterface;
import org.pentaho.di.repository.kdr.KettleDatabaseRepository;
import org.pentaho.di.repository.kdr.KettleDatabaseRepositoryMeta;
import org.pentaho.di.trans.Trans;
import org.pentaho.di.trans.TransMeta;
import java.util.HashMap;
import java.util.Map;
public class RunKettleJob {
public static void main(String[] args) {
// 参数列表
Map<String, String> params = new HashMap<>();
params.put("filename", "runjob");
params.put("extend", "txt");
String kjbPath = "D:/kettle/jobs/Kettledoc/常规作业示例.kjb";
String ktrPath = "D:/kettle/jobs/Kettledoc/转换任务.ktr";
// runJob(params, kjbPath);