Giter Club home page Giter Club logo

java8-java11's Introduction

Atualiza JDK 8 para JDK 11 app Java

Guia simples de como atualizar uma aplicação Java 8 para o novo LTS(Java 11).

Esse guia foi testado em algumas libs e aplicações spring.

Contribuições

Contribuições são bem vindas, principalmente sobre relatos de problemas e correções no guia.

Pré atualização

Antes de tudo, lembre-se de que é necessário possuir o JDK da versão que deseja, que no nosso caso seria oracleJDK/openJDK 11.

Configure se necessário o java default da sua maquina, exemplo:

$JAVA_HOME:

$: export JAVA_HOME=PATH_JDK_11

Utilizando update alternatives:

# Java
$: sudo update-alternatives --config java
# Javac
$: sudo update-alternatives --config javac

Configurando a aplicação

Utilizando Maven

Atualize a versão do seu java no pom.xml, por exemplo:

    ...
    <properties>
        ...
        <java.version>11</java.version>
        <maven.compiler.source>${java.version}</maven.compiler.source>
        <maven.compiler.target>${java.version}</maven.compiler.target>
        ...
    </properties>
    ...

Problemas Comuns

Classes que não existem ou beans que não iniciam

Em alguns casos pode ser necessário fazer um import explicito de algumas dependencias, como por exemplo a falta do javaassists:

Exception exemplo:

Caused by: java.lang.NullPointerException: null
    at javassist.util.proxy.SecurityActions.setAccessib(SecurityActions.java:103) ~[javassist-3.22.0-GA.jar:na]
    at javassist.util.proxy.DefineClassHelper.toClas(DefineClassHelper.java:151) ~[javassist-3.22.0-GA.jar:na]

Lib necessária:

    <dependency>
        <groupId>org.javassist</groupId>
        <artifactId>javassist</artifactId>
        <version>3.23.1-GA</version>
    </dependency>

JAVA EE

Algumas libs do Java EE foram removidas, segunda proposta JEP 320. Então é necessário fazer imports explicitos, todas as libs podem ser encontradas no maven central:

    <dependency>
        <groupId>javax.xml.bind</groupId>
        <artifactId>jaxb-api</artifactId>
        <version>2.3.1</version>
    </dependency>

Links:

java8-java11's People

Contributors

lramosduarte avatar

Stargazers

Ledson Oliveira da Silva avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.