0 امتیاز
قبل در برنامه نویسی توسط (10 امتیاز)
ویرایش شده قبل توسط

ببخشید من یک سوال داشتم اگر داخل یک فایل بیش از یک فایل .class داشته باشیم و بخواهیم همه رو لود کنیم به چه صورت باید عمل کنیم؟

2 پاسخ

+1 امتیاز
قبل توسط (302 امتیاز)
ویرایش شده قبل توسط

 

File folderAdded = new File(classesPath);

  File [] classFileAdded = folderAdded.listFiles();
  String [] addedClassName = new String [classFileAdded.length];
 
  for(int classCounter = 0; classCounter < classFileAdded.length; classCounter++){
  
   addedClassName[classCounter] = classFileAdded[classCounter].getName(); 
   addedClassName [classCounter] = addedClassName[classCounter].substring(0,(addedClassName[classCounter].lastIndexOf(".")));
   addedClassName [classCounter] = "package_name." + addedClassName[classCounter];
  
   Class addedClass = Class.forName(addedClassName[classCounter]);
   Object o = addedClass.newInstance();

}
قبل توسط (302 امتیاز)
در حقیقت باید یه جورایی مسیر فایل های .class رو parse کنید. بعد که fully qualified name اونارو دراوردین با کلاس لودر لودشون کنید.
0 امتیاز
قبل توسط (778 امتیاز)
همه را داخل یک فولدر می ریزیم و فولدر را در classpath می گذاریم. به طور کلی اگر چندین کلاس در یک فولدر باشند classpath کردن اون فولدر کافیه اما اگر zip یا jar شده باشد باید اسم فایل های zip و jar را بنویسیم در classpath
قبل توسط (10 امتیاز)
ببخشید منظور از classpath کردن چیه؟ من برای لود کردن کلاس ها از این لینک اتفاده میکنم https://javabyab.com/2802 همانطور که در این لینک میبینید فقط یک کلاس لود شده است حال اگر چندین کلاس داشته باشیم این کد باید به چه صورتی تغییر کنه؟

سوالات مشابه

+1 امتیاز
1 پاسخ 1.5هزار بازدید
0 امتیاز
1 پاسخ 529 بازدید
+1 امتیاز
1 پاسخ 415 بازدید
+1 امتیاز
1 پاسخ 943 بازدید
0 امتیاز
0 پاسخ 189 بازدید
...