[英]How do I add/remove attributes and methods?
我正在嘗試開發一個系統,使用戶應該能夠在實際的Java文件中進行修改[添加/刪除屬性和方法]。 盡管API提供了一些方法來創建新的方法/字段,但我們如何刪除/銷毀不需要的方法/字段。
我想做一個方法
updatefile(file, newMethods, newAttributes)
file
是將要修改其方法和屬性的Java文件。
newMethods
現在將成為文件方法
newAttributes
將是文件的屬性
還可能需要newMethods的某些條目==我需要對其進行檢查的原始方法的某些條目; 對於newAttributes同樣如此。
如何才能做到這一點?
您需要一個字節碼操作庫。 檢查以下各項:bcel,cglib,asm,javassist。
盡管我同意JBNizet的要求,但看起來有些奇怪。 已經有功能強大的IDE可以執行此操作,並且最終用戶通常不應調整類結構。
您的想法似乎類似於JBoss forge項目。
我認為刪除方法的可能性必須基於Java規范中聲明的Java方法簽名和方法返回類型。
例如:methodRemove(File file,String returnType,String methodName,String [] methodParametersTypes)將引用適當的方法以在文件中只有一個類的情況下從文件中刪除。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.