code: public static URL findFirst(final String aFileName) throws IOException {
          final FileExtFileFilter filter = new FileExtFileFilter(JAR_EXT);
  
          for (final String cpEntry : System.getProperty(CLASSPATH).split(File.pathSeparator)) {
              final File file = new File(cpEntry);
  
              LOGGER.debug(MessageCodes.UTIL_005, cpEntry, aFileName);
  
              if (file.isDirectory()) {
                  final File target = new File(file, aFileName);
  
                  if (target.exists()) {
                      LOGGER.debug(MessageCodes.UTIL_006, aFileName, cpEntry);
                      return target.toURI().toURL();
                  }
              } else if (filter.accept(file.getParentFile(), file.getName())) {
                  final JarFile jarFile = new JarFile(file);
                  final JarEntry jarEntry = jarFile.getJarEntry(aFileName);
  
                  if (jarEntry != null && jarEntry.getSize() > 0) {
                      LOGGER.debug(MessageCodes.UTIL_006, aFileName, cpEntry);
                      jarFile.close();
                      return file.toURI().toURL();
                  } else {
                      if (jarEntry != null) {
                          LOGGER.debug(MessageCodes.UTIL_007, jarEntry.getName());
                      } else {
                          LOGGER.debug(MessageCodes.UTIL_008, aFileName);
                      }
                  }
  
                  jarFile.close();
              } else {
                  LOGGER.debug(MessageCodes.UTIL_009, file);
              }
          }
  
          return null;
      }
docs: Finds the first instance of the supplied file name in the classpath (in either a directory or a jar file) and
  returns a {@link URL} for it.
  
  @param aFileName The name of the file we want to read
  @return The {@link URL} of the file we want to read
  @throws IOException If there is trouble reading from the file system or jars