2
回答
烦请哪位大神指导下怎么实现java调用kettle来执行指定的KTR或者KJB文件?
【腾讯云】校园拼团福利,1核2G服务器10元/月!>>>   

自己写了个程序,但是调用指定ktr文件时会报错:DatabaseJoin不能识别,错误如下:

Unable to load class for step/plugin with id [DatabaseJoin]. Check if the plugin is available in the plugins subdirectory of the Kettle distribution.

附上调用程序:

  public static void main(String arg[]) throws Exception 
   {
//       String idname="6";//作为参数值 
  
//       String idname="201407";


      String filename="D:/AA/testAHN.ktr";//ktr路径
//       String filename="D:/AA/test10212.ktr";//ktr路径
  
      KettleEnvironment.init();//初始化kettle环境
      TransMeta transMeta = new TransMeta(filename);//new tran的源数据对象
      Trans trans = new Trans(transMeta);//创建tran对象
//       trans.setVariable("namevalue",idname);//给对象传参
      trans.prepareExecution(null);//异常处理
      trans.startThreads();//开始执行
      trans.waitUntilFinished();//等待执行完毕
      if(trans.getErrors()!=0)
      {
          System.out.println("Error encountered!"); 
      }
      
   }

举报
UQing
发帖于3年前 2回/2K+阅
顶部