diff --git a/spring-boot-project/spring-boot-tools/spring-boot-loader/src/main/java/org/springframework/boot/loader/jar/JarFile.java b/spring-boot-project/spring-boot-tools/spring-boot-loader/src/main/java/org/springframework/boot/loader/jar/JarFile.java index b58434aa6ea..521d7dd85eb 100644 --- a/spring-boot-project/spring-boot-tools/spring-boot-loader/src/main/java/org/springframework/boot/loader/jar/JarFile.java +++ b/spring-boot-project/spring-boot-tools/spring-boot-loader/src/main/java/org/springframework/boot/loader/jar/JarFile.java @@ -1,5 +1,5 @@ /* - * Copyright 2012-2019 the original author or authors. + * Copyright 2012-2020 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -191,20 +191,7 @@ public class JarFile extends java.util.jar.JarFile implements Iterable entries() { - Iterator iterator = iterator(); - return new Enumeration() { - - @Override - public boolean hasMoreElements() { - return iterator.hasNext(); - } - - @Override - public java.util.jar.JarEntry nextElement() { - return iterator.next(); - } - - }; + return new JarEntryEnumeration(this.entries.iterator()); } /** @@ -432,4 +419,27 @@ public class JarFile extends java.util.jar.JarFile implements Iterable { + + private final Iterator iterator; + + JarEntryEnumeration(Iterator iterator) { + this.iterator = iterator; + } + + @Override + public boolean hasMoreElements() { + return this.iterator.hasNext(); + } + + @Override + public java.util.jar.JarEntry nextElement() { + return this.iterator.next(); + } + + } + }