Salut,
je suis pas un spécialist de java, mais à priori JDK, c'est le Java Development Kit, c'est à dire les outils et api pour programmer en java, et JRE, c'est Java Runtime Environment, c'est pour utliser les classes. Donc quand tu programme (en fait quand tu compile plutot), tu utilise la JDK, et quand java tourne, c'est JRE.
Comme tu peux l'imaginer, pas de jdk sans jre (ca sert à rien de compilier pour pas pouvoir voir ce que tu as fait tourner) par contre, la plupart des utilisateurs lambda c'est plutot juste le jre.
Pour la jvm donc, a priori c'est donc la jre. pour le classpath, c'est le jdk