In den Kommentaren zu der angenommenen Antwort fragte nobalG: "Warum wird der Compiler benötigt, wenn jre schon da ist?"
Zum Zeitpunkt des Schreibens hatte ich nicht genug Ruf zu kommentieren, so antwortete ich stattdessen hier.
Ich hatte eine Situation, in der ich Code schreiben wollte, der anderen Code zur Laufzeit kompiliert und dann diesen kompilierten Code verwendet. In meinem Fall habe ich ein Tool erstellt, das eine Testklasse basierend auf einem bestimmten Framework erstellen, kompilieren, die Klasse laden und Testdaten daraus extrahieren kann, sodass die Daten als Teil eines End-to-End-Tests verwendet werden können . Damit dieses Tool ordnungsgemäß ausgeführt werden kann, muss es mit dem JDK ausgeführt werden, damit es den Java-Compiler verwenden kann.
ofcource zu RUN einer Jar-Datei benötigen Sie nur die Java-RUNTIME-Umgebung (jre) und nicht das Java-DEVELOPMENT-Kit (jdk), in dem die jre übrigens enthalten ist. Aber ich weiß nicht wirklich was du meinst mit 'renne diese Jar-Datei in ein anderes System', willst du einfach auf einem anderen PC laufen? – nurgan