Hashwert im Dateinamen von Downloads, Debugging in VS Code
-
Hallo,
ich versuche, in Python ein kleines Skript zu schreiben, das überprüfen soll, ob ich einen mit MediathekView gefundenen Film bereits heruntergeladen habe. Mein Ansatz ist, den standardmäßig im Dateinamen enthaltenenen Hashwert mit dem Hashwert der URL des Kandidaten zu vergleichen.
In src/main/java/mediathek/daten/DatenDownload.java habe ich die Funktion getHash() gefunden, mit der der Hashwert berechnet wird. Eine Reimplementation von hashCode() in Python habe ich hier gefunden und mit einem kleinen Java-Programm an einer URL verifiziert. Trotzdem stimmen die von mir berechneten Hashwerte nicht mit denen in den Dateinamen meiner Downloads überein. Wo könnte mein Fehler liegen?
Ich habe den Quellcode von MediathekView von GitHub heruntergeladen. Ich würde das Programm gerne im Debugger ausführen und mit einem Breakpunkt in getHash() herausfinden, was schiefläuft. Wenn ich im Debugger von VS Code Main.java starte, erhalte ich nur eine Fülle von import-Fehlern. Leider entwickle ich selbst nicht in Java. Kann mir jeman einen Tip geben, was ich tun müsste, um das Programm auszuführen?
Danke im Voraus,
maf -
hast du ein JDK 21 installiert und wie in der VS Code Extension konfiguriert? (vgl. Anleitung)
-
Installiert ist OpenJDK 17, das in Debian Bookworm standardmäßig enthalten ist. Damit konnte ich in VS Code aicj problemlos das Java-Programm ausführen, das ich für den Vergleich der Ergebnisse von hashCode() in Java und meiner Reimplementation in Python benutzt habe.
Meine Vermutung ist, dass ich die Import-Fehler beheben könnte, indem ich mit Maven die (in pom.xml beschriebenen ?) Abhängigkeiten auflöse. Nur wie gesagt: Mangels Erfahrung mit Java und Maven weiß ich nicht, wie ich das - speziell in VS Code mit der Erweiterung Maven for Java - anstellen soll.
-
Erst beim Test mit Maven habe ich verstanden, dass für die Entwicklung JDK 21 erforderlich ist. Bisher hatte ich geglaubt Version 14 sei ausreichend, weil Java 14 in den Systemvoraussetzungen für die Ausführung von MediathekView genannt wird.
OpenJDK 21 ist in Debian Bookworm nicht enthalten, ließe sich natürlich trotzdem mit etwas Aufwand installieren. Das würde ich mir gerne ersparen.
Vielleicht findet sich also doch jemand, der mir einen Tipp gegeben kann, warum in den Dateinamen beim Download andere Hashwerte benutzt werden, als hashCode() für die URLs berechnet?