Check if a class exists.
Lookup the legnth for a resource on the classpath
Lookup the legnth for a resource on the classpath
Lookup the legnth for a resource on the classpath
Lookup the legnth for a resource on the classpath
Check if a directory exists on the classpath
Check if a directory exists on the classpath
Check if a directory exists on the classpath
Check if a directory exists on the classpath
Check if a file exists on the classpath
Check if a file exists on the classpath
Check if a file exists on the classpath
Check if a file exists on the classpath
Lookup the lastModified timestamp for a resource on the classpath
Lookup the lastModified timestamp for a resource on the classpath
Lookup the lastModified timestamp for a resource on the classpath
Lookup the lastModified timestamp for a resource on the classpath
Find all classes annotated with a Java Annotation.
Find all classes annotated with a Java Annotation.
Note: This loads ALL classes under the basePackage!
Find all class names under the base package (includes anonymous/inner/objects etc...)
Recursively Find files on the classpath given a base package.
Find all concrete classes that extend a trait/interface/class.
Find all concrete classes that extend a trait/interface/class.
Note: This loads ALL classes under the basePackage and uses Class.isAssignableFrom for checking.
Check if a class is loaded
Similar to File.listFiles() (i.e.
Similar to File.listFiles() (i.e. a non-recursive findClassPathFiles)
Check if a class exists.
Check if a class exists. If it does not then a ClassNotFoundException is thrown.
(Since version ) see corresponding Javadoc for more information.
This contains utility methods for scanning Classes or Files on the classpath.
Originally we used the classpath scanning functionality in the Spring Framework and then later switched to the Reflections library (https://code.google.com/p/reflections/) to avoid the dependency on Spring. At some point we ran into issues with the Reflections library not properly detecting classes so I ended up writing this as a replacement.