改名字df
2017-11-17 13:59
生成的 是 CLASS_PATHcom\imooc\... 说这个"系统找不到指定的路径" 是怎么回事啊?
这个实例主要是为了让大家更加深刻的理解Java类热加载的原理,老师在示例中直接写了文件分隔符,最好的方式是写成File.seperator,这样就不会受操作系统平台的影响了
我测试了:name=name.replace(".", File.separator);
成功!
name = name.replace('.', File.separatorChar); //将.替换成系统的分隔符
这个提交答案的页面显示有问题吧,我点了下加粗,反而不显示了
private byte[] loadClassData(String name) { try { // name=name.replace(".","//");//将name中的.转换成//,变成目录结构 FileInputStream is = new FileInputStream(new File(classpath+name+".class"));//编译后的.class文件的完整路径 ByteArrayOutputStream bos = new ByteArrayOutputStream(); int b = 0; while ((b=is.read())!=-1){ bos.write(b); } is.close(); return bos.toByteArray(); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } return null; }
把分隔符替换下就好了
课程讲的错误 classpath 后面要跟一个File.seperator
Spring Boot热部署
40468 学习 · 78 问题
相似问题