code: public byte[] getResource(String pluginName, String fileName) throws Exception {
          // TODO: This is going to be slow.. future improvement is to cache the data instead of searching all jars
          for (String jarFilename : jarInformation) {
              JarFile jarFile = new JarFile(new File(jarFilename));
              Enumeration<?> enumer = jarFile.entries();
  
              // Use the Plugin-Name manifest entry to match with the provided pluginName
              String jarPluginName = jarFile.getManifest().getMainAttributes().getValue("Plugin-Name");
  
              if (!jarPluginName.equals(pluginName)) {
                  continue;
              }
  
              while (enumer.hasMoreElements()) {
                  Object element = enumer.nextElement();
                  String elementName = element.toString();
  
                  // Skip items in the jar that don't start with "resources/"
                  if (!elementName.startsWith("resources/")) {
                      continue;
                  }
  
                  elementName = elementName.replace("resources/", "");
                  if (elementName.equals(fileName)) {
                      // get the file from the jar
                      ZipEntry ze = jarFile.getEntry(element.toString());
  
                      InputStream fileStream = jarFile.getInputStream(ze);
                      byte[] data = new byte[(int) ze.getSize()];
                      DataInputStream dataIs = new DataInputStream(fileStream);
                      dataIs.readFully(data);
                      dataIs.close();
                      return data;
                  }
              }
          }
          throw new FileNotFoundException("Could not find resource");
      }
docs: Gets a static resource from a plugin
  
  @param pluginName - Name of the plugin(defined in the plugin manifest)
  @param fileName - Filename to fetch
  @return byte array of the resource
  @throws Exception exception