code: private void listenForLibraryChanges(String libid, AppClassLoader acl) {
          // ensure this loader is removed from the canonical store when the library is updated
          new WeakLibraryListener(libid, acl.getKey().getId(), acl, bundleContext) {
              @Override
              protected void update() {
                  Object cl = get();
                  if (cl instanceof AppClassLoader && aclStore != null)
                      aclStore.remove((AppClassLoader) cl);
                  deregister();
              }
          };
      }
docs: create a listener to remove a loader from the canonical store on library update