Sdílet prostřednictvím


Přechod z Javy 7 na Javu 8

Tento článek obsahuje základní pokyny k migraci aplikace z Javy 7 na Javu 8. Využití funkcí Javy 8 se nevztahuje.

Neexistuje žádné univerzální řešení pro přechod kódu z Javy 7 na Javu 8. Přechod z Javy 7 na Javu 8 je obvykle malý objem práce. Mezi potenciální problémy patří několik změněných rozhraní API, zpřísnění odvozování typů v jazyce Javac, změny zavaděčů tříd a změny permgenu (součást uvolňování paměti).

Obecně platí, že nejlepším přístupem je zkusit spustit na Java 8 bez nutnosti nejprve překompilovat. Tento přístup zajistí co nejrychlejší zprovoznění aplikace. Vaším cílem pro knihovnu bude publikování artefaktu, který je zkompilovaný a otestovaný pomocí sady JDK 8.

Konec životnosti Javy 7 (EOL)

Podpora komunity skončí, až Java 7 dosáhne konce životnosti dne 29. července 2022. Všechny aplikace spuštěné v Javě 7 budou dál běžet, ale samotná Java 7 nebude dostávat aktualizace ani opravy zabezpečení. Pokud chcete minimalizovat rizika a potenciální ohrožení zabezpečení, upgradujte aplikace na Javu 8 nebo 11 v závislosti na požadavcích na úlohy.

Kanonickým průvodcem, který je potřeba sledovat, je Průvodce migrací oracle JDK. Průvodce migrací se zabývá všemi nekompatibilitami ve specifikaci Javy a nekompatibilitami v implementaci sady JDK. Většina z těchto nekompatibilit jsou hraniční případy a měli byste prozkoumat, kdy se zobrazí upozornění nebo dojde k chybě.

Běží na Javě 8

Většina aplikací by měla běžet v Javě 8 bez úprav. První věc, kterou se pokusíte, je spustit v Javě 8 bez rekompilování kódu. Účelem pouhého spuštění je zjistit, jaká upozornění a chyby se během provádění objevují. Tento přístup získá
aplikace, která se bude spouštět v Javě 8 rychleji, tím, že se zaměří na minimální práci, kterou je potřeba provést.

Většinu problémů, se které můžete setkat, můžete vyřešit, aniž byste museli rekompilovat kód. Pokud potřebujete opravit problém v kódu, proveďte opravu, ale pokračujte v kompilaci pomocí sady JDK 7. Pokud je to možné, před kompilací pomocí sady JDK 8 pracujte na tom, aby aplikace java s verzí 8.

Kompilace pomocí Javy 8

Kompilace pomocí sady JDK 8 může vyžadovat aktualizace sestavení skriptů, nástrojů, testovacích architektur a zahrnutých knihoven. -Xlint:unchecked Pomocí možnosti javac získáte podrobné informace o použití interního API JDK a ostatních varování.

Migrace z Javy 7 pro Azure App Service

Pokud chcete migrovat službu App Services z Javy 7 na Javu 8 nebo 11, přihlaste se k webu Azure Portal, přejděte na webové aplikace, které chcete aktualizovat, a přejděte donastavení zásobníku nastavení>>. Pokud používáte Tomcat, uvidíte rozevírací seznamy pro hlavní a podverze jazyka Java a také pro verzi Tomcatu. Vyberte Javu 8 nebo 11. Nezapomeňte, že tuto změnu konfigurace můžete provést v slotu nasazení, abyste mohli bezpečně otestovat změnu konfigurace a pak prohodit nové prostředí do produkčního prostředí. (Java 7 může být skrytá, aby zákazníci nemuseli používat závislosti na starých modulech runtime.) Další informace najdete v tématu Nastavení přípravných prostředí ve službě Azure App Service.

Změna verze Javy pomocí selektoru

Můžete použít nastavení aplikace JAVA_TOOLS, pokud potřebujete zadat nové možnosti runtime, a budou aplikovány při spuštění vaší aplikace. Další informace najdete v tématu Konfigurace aplikace Java pro Azure App Service. Další informace o zásadách podpory pro moduly runtime ve službě App Service najdete v části Předdefinované jazyky a architektury v přehledu služby App Service.

Další kroky

Po spuštění aplikace v Javě 8 doporučujeme postupovat podle cesty modernizace Javy k Javě 11 pomocí následujících příruček.