Ich versuche, eine Datei aus einem Jar-Archiv zu lesen und es als java.io.InputStream zurückzugeben.GroovyCastException beim Aufrufen von java.util.zip.ZipFile.getInputStream()
Hier ist die Methode, wo ich dies zu erreichen versuchen:
InputStream getExportInfo(path) {
def zipFile = new java.util.zip.ZipFile(new File(path))
zipFile.entries().each { entry ->
def name = entry.name
if (!entry.directory && name == "ExportInfo") {
java.io.InputStream is = zipFile.getInputStream(entry)
return is
}
}
}
Allerdings erhalte ich diesen Fehler von der Konsole:
org.codehaus.groovy.runtime.typehandling.GroovyCastException: kann nicht werfen Objekt '[email protected]' mit Klasse 'java.util.zip.ZipFile $ ZipEntryIterator' Klasse 'java.io.InputStream'
Es sieht aus wie der .getInputStream (Eintrag) nicht zurückgibt ein ‚java.io.InputStream‘, aber es sollte auf die documentation
nach und nicht einfach ‚gegossen‘ auch kommen?
Ist das die gesamte Fehlermeldung? Welche Zeile verursacht den Fehler? –
Und wie nennt man diese Methode? –
@ Code-Apprentice es druckt auch einen Stack-Trace, der an der 'zipFile.entries() endet. Jeder {entry ->' line. Ich rufe diese Methode wie folgt auf: 'def exportInfo = jarHandler.getExportInfo (jarPath)' –