FileSystemManager fsManager  =   null
FileObject listendir 
=   null
try  { 
fsManager 
=  VFS.getManager(); 
listendir 
=  fsManager.resolveFile( new  File( 
" ./classes/ " ).getAbsolutePath()); 
catch  (FileSystemException e) { 
log.error(
" 监视文件夹出错了 " , e); 
e.printStackTrace(); 

DefaultFileMonitor fm 
=   new  DefaultFileMonitor( new  FileListener() { 
public   void  fileCreated(FileChangeEvent event)  throws  Exception { 
monitor(event); 


public   void  fileDeleted(FileChangeEvent event)  throws  Exception { 
monitor(event); 


public   void  fileChanged(FileChangeEvent event)  throws  Exception { 
monitor(event); 


private   void  monitor(FileChangeEvent event) { 
FileObject fileObject 
=  event.getFile(); 
FileName fileName 
=  fileObject.getName(); 
if  (fileName.getBaseName().endsWith( " .class " )) { 
reload(); 


}); 
fm.setRecursive(
true ); 
fm.addFile(listendir); 
fm.start();