كيفية حذف مجلد باستخدام JavaScript المعدل في Pentaho؟

StackOverflow https://stackoverflow.com/questions/3850269

  •  27-09-2019
  •  | 
  •  

سؤال

أحاول حذف مجلد باستخدام JavaScript المعدل في Pentaho ، ولكن delete الكلمة الرئيسية محجوز بواسطة برنامج التحويل البرمجي PDI (يتم استخدامه لحذف متغير من الذاكرة).

هذا ما أفعله:

var source = new java.io.File("some path");
var files = source.list();
for (var i=0; i<files.length; i++) {
    deleteFile(oldpath + "/" + filename); // empty folder from files, works okey
}
source.delete();

وأحصل على خطأ في التجميع من بنتاهو.

حاولت DeleteFile على المجلد ، ولكن يبدو أن DeleteFile لا يمكن حذف مجلد.

أي اقتراحات كيفية التغلب على استخدام كلمة محفوظة؟

هل كانت مفيدة؟

المحلول

هناك حلان لمشكلتك:

1: أفضل:

قم بإنشاء وظيفة ، واستيراد تحولك الحالي إلى الوظيفة. في التحول ، قم بتعيين اسم المجلد على أنه أ عامل, ، في الاستخدام الوظيفي المتغير في حذف المجلدات خطوة.

2: أسهل:

استخدم الانعكاس في خطوة قيمة نص Java المعدلة (تم اختباره في Spoon 4.0.1):

var source = new java.io.File("D:\\testdel");
var fileClass = source.getClass();
var delMethod = fileClass.getMethod("delete", null);
delMethod.invoke(source, null);
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top