BT
x A sua opinião é importante! Por favor preencha a pesquisa do InfoQ sobre os seus hábitos de leitura!

Java 9 removerá suporte de compilação à versão 1.5 para trás

por Alex Blewitt , traduzido por Rafael Sakurai em 04 Jul 2013 |

A recente proposta de aperfeiçoamento do Java JEP 182 (Java Enhancement Proposal), direcionada para o Java 8 e Java 9, tem como objetivo modificar o modelo de suporte para as flags -target e -source usadas pelo compilador do Java. A proposta prevê que o compilador suportará no máximo três versões anteriores à do próprio compilador.

A opção -target permite que o compilador informe uma versão especifica do formato da classe Java. Tipicamente são especificadas as versões do Java, como 1.5 ou 1.6, o que especifica a versão do bytecode gerada:

  • 48: Java 4
  • 49: Java 5
  • 50: Java 6
  • 51: Java 7
  • 52: Java 8 (not yet released)
  • 53: Java 9 (not yet released)

A opção -source permite que o compilador reconheça, ou trate como erros, as novas estruturas da linguagem, como lambdas, try-with-resources, uso de strings no switch, entre outros. Algumas funcionalidades novas da linguagem, como lambdas, requerem o uso de funcionalidades especificas do bytecode, como o invokedynamic. Dessa forma, muitas vezes não é possível usar uma versão mais nova do que a versão alvo definida no target.

A mudança já começou; a JSR14 e a versão 1.4 não são mais aceitas no Java 8, e o uso da versão 1.5 gera avisos (warnings) do compilador. De forma análoga, o Java 9, quando liberado, irá remover o suporte à versão 1.5 e apresentar avisos para a versão 1.6.

De uma perspectiva prática, isso pode não parecer uma grande mudança; porém, até recentemente, as runtimes de OSGi ainda compilavam com o -source 1.5 e target jsr14 visando gerar códigos capazes de incorporar tipos genéricos, para compatibilidade com o J2ME. O uso da jsr14 será removido no final de 2013 do código do Eclipse. Por fim, os runtimes de OSGi, como Felix e Equinox, continuarão disponíveis enquanto houver necessidade comercial.

Olá visitante

Você precisa cadastrar-se no InfoQ Brasil ou para enviar comentários. Há muitas vantagens em se cadastrar.

Obtenha o máximo da experiência do InfoQ Brasil.

Dê sua opinião

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão
Comentários da comunidade

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão

Dê sua opinião

Conteúdo educacional

Feedback geral
Bugs
Publicidade
Editorial
InfoQ Brasil e todo o seu conteúdo: todos os direitos reservados. © 2006-2014 C4Media Inc.
Política de privacidade
BT