UnsupportedClassVersionError
Przetłumaczone automatycznie z angielskiego. Przeczytaj oryginał
Zmiana poziomu języka Java, aby uruchamiać skompilowany kod na starszych środowiskach uruchomieniowych
Pracuję nad pewnym projektem w Javie. Używam IntelliJ IDEA i zdecydowałem się na OpenJDK-18 od Oracle. Ale… to środowisko jest domyślnie dostępne tylko podczas kompilacji w IDE. W systemie mam OpenJDK-11. Próba uruchomienia kodu skompilowanego przez JDK-18 na JDK-11 daje mi następujący komunikat:
java.lang.UnsupportedClassVersionError: Main has been compiled by a more recent version of the Java Runtime (class file version 62.0), this version of the Java Runtime only recognizes class file versions up to 55.Aby sobie z tym poradzić, przejdź do ustawień modułu (lub Project Structure) i zmień Language Level na niższą wartość. Jeśli kompilujesz w wersji 18, będzie ustawiona wersja 18. Przełącz na wersję 11 (local variables syntax for lambda parameters) i skompiluj ponownie. Teraz będziesz mógł uruchomić aplikację nawet na starszym JDK.