问题描述
问一个很菜的问题,能不能在某个project下面把某个java源文件的内容用类似classloader的方法读出来?问题补充问题起源是需要自动生成一些对象。但这些class的setter method对参数是有限制的。例如字符串参数长度不能超过多少等。只是用到Method类好像也不能做到,所以想得到源代码。但是用classleader.gerResource的方法只能读到project下面resources里头的文件,*.java 文件放在src/java 下面,怎么都读不到。问题补充WhisperXD 写道
解决方案
"但是用classleader.gerResource的方法只能读到project下面resources里头的文件,*.java 文件放在src/java 下面,怎么都读不到"是 因为你的文件没有打包到WAR包中去吧(或者CLASS目录下),只要有,不管什么文件都能读到吧.
解决方案二:
是没有放到WAR包中吧(或者是CLASS目录下吧)
解决方案三:
java反射?
解决方案四:
ASM..如果你对class文件有研究的话。。
时间: 2024-11-08 21:33:01