Make sure the classloader is closed after use.
RELNOTES:None

--
PiperOrigin-RevId: 144218174
MOS_MIGRATED_REVID=144218174
diff --git a/src/tools/android/java/com/google/devtools/build/android/AndroidFrameworkAttrIdJar.java b/src/tools/android/java/com/google/devtools/build/android/AndroidFrameworkAttrIdJar.java
index eb41f0d..154f83e 100644
--- a/src/tools/android/java/com/google/devtools/build/android/AndroidFrameworkAttrIdJar.java
+++ b/src/tools/android/java/com/google/devtools/build/android/AndroidFrameworkAttrIdJar.java
@@ -13,8 +13,8 @@
 // limitations under the License.
 package com.google.devtools.build.android;
 
+import java.io.IOException;
 import java.lang.reflect.Field;
-import java.net.MalformedURLException;
 import java.net.URL;
 import java.net.URLClassLoader;
 import java.nio.file.Path;
@@ -51,15 +51,15 @@
   }
 
   private Map<String, Integer> getAttrFields() throws AttrLookupException {
-    try {
-      URLClassLoader urlClassLoader = new URLClassLoader(new URL[]{androidJar.toUri().toURL()});
+    try (URLClassLoader urlClassLoader =
+        new URLClassLoader(new URL[] {androidJar.toUri().toURL()})) {
       Class<?> attrClass = urlClassLoader.loadClass(ANDROID_ATTR_CLASS);
       Map<String, Integer> attributeIds = new HashMap<>();
       for (Field field : attrClass.getFields()) {
         attributeIds.put(field.getName(), field.getInt(null));
       }
       return attributeIds;
-    } catch (ClassNotFoundException | IllegalAccessException | MalformedURLException e) {
+    } catch (IOException | ClassNotFoundException | IllegalAccessException e) {
       throw new AttrLookupException(e);
     }
   }