Compartilhar via


Transição do Java 7 para o Java 8

Este artigo fornece orientações de alto nível sobre como migrar seu aplicativo do Java 7 para o Java 8. O uso de recursos do Java 8 não é abordado.

Não há uma solução única para fazer a transição de código do Java 7 para o Java 8. A migração do Java 7 para o Java 8 normalmente é uma pequena quantidade de trabalho. Problemas potenciais incluem um punhado de APIs alteradas, restrição da inferência de tipos no javac, alterações nos carregadores de classes e alterações no permgen (parte da coleta de lixo).

Em geral, a melhor abordagem é tentar executar no Java 8 sem recompilar primeiro. Essa abordagem colocará seu aplicativo em funcionamento o mais rápido possível. Para uma biblioteca, sua meta será publicar um artefato compilado e testado com o JDK 8.

Fim de Suporte do Java 7

O suporte à comunidade terminará quando o Java 7 chegar ao fim da vida útil em 29 de julho de 2022. Todos os aplicativos em execução no Java 7 continuarão a ser executados, mas o java 7 em si não receberá atualizações ou patches de segurança. Para minimizar riscos e possíveis vulnerabilidades de segurança, atualize seus aplicativos para Java 8 ou 11, dependendo dos requisitos de carga de trabalho.

O guia canônico a seguir é o Guia de Migração do Oracle JDK. O guia de migração aborda todas as incompatibilidades na especificação java e incompatibilidades na implementação do JDK. A maioria dessas incompatibilidades são casos extremos, e você deve investigar quando visualizar um aviso ou encontrar um erro.

Em execução no Java 8

A maioria dos aplicativos deve ser executada no Java 8 sem modificação. A primeira coisa a tentar é executar no Java 8 sem recompilar o código. O objetivo de apenas executar é ver quais avisos e erros saem da execução. Essa abordagem obtém um
Aplicativo para rodar no Java 8 mais rapidamente, focando no trabalho mínimo necessário.

Você pode resolver a maioria dos problemas que você pode encontrar sem precisar recompilar o código. Se você precisar corrigir um problema no código, faça a correção, mas continue a compilar com o JDK 7. Se possível, trabalhe para que o aplicativo seja executado com java a versão 8 antes de compilar com o JDK 8.

Compilação com Java 8

A compilação com o JDK 8 pode exigir atualizações para criar scripts, ferramentas, estruturas de teste e bibliotecas incluídas. Use a opção -Xlint:unchecked para javac obter os detalhes sobre o uso da API interna do JDK e outros avisos.

Migração do Java 7 para o Serviço de Aplicativo do Azure

Para migrar seus Serviços de Aplicativo do Java 7 para Java 8 ou 11, entre no portal do Azure, navegue até os aplicativos Web que você deseja atualizar e acese>Configurações>Configurações de Pilha. Você verá menus suspensos para as versões principais e secundárias do Java e a versão do Tomcat, caso esteja usando o Tomcat. Selecione Java 8 ou 11. Lembre-se de que você pode fazer essa alteração de configuração em um slot de implantação para testar com segurança a alteração de configuração e, em seguida, alternar o novo ambiente para produção. (O Java 7 pode estar oculto para impedir que os clientes usem dependências em runtimes antigos.) Para obter mais informações, consulte Configurar ambientes de preparo no Serviço de Aplicativo do Azure.

Use o seletor para alterar sua versão do Java

Você pode usar a configuração do JAVA_TOOLS aplicativo se precisar especificar novas opções de runtime e elas serão aplicadas quando seu aplicativo for iniciado. Para obter mais informações, consulte Configurar um aplicativo Java para o Serviço de Aplicativo do Azure. Para obter mais informações sobre políticas de suporte para runtimes no Serviço de Aplicativo, consulte a seção de linguagens internas e estruturas da visão geral do Serviço de Aplicativo.

Próximas etapas

Depois de fazer com que seu aplicativo seja executado no Java 8, recomendamos seguir o caminho de modernização do Java para Java 11 usando os guias a seguir.