Date post: | 27-Jun-2015 |
Category: |
Technology |
Upload: | otavio-goncalves-de-santana |
View: | 654 times |
Download: | 1 times |
#OpenJDK
Otávio Santana Bruno Souza@otaviojava @brjavaman
Comunidades
• @javabahia• @soujava• @java• @soujavalivre
Funcionamento externo
• JCP (Java Community Process)
• JSR(Java Specification Requests)
• JEP (JDK Enhancement Proposals)
• JSR 336 = Java 71) JSR 203 : ("NIO.2")
2) JSR 292 : Invoke Dynamic
3) JSR 334 :COIN
JEP 174: Nashorn JavaScript EngineJEP 156: G1 GC: Reduce need for full GCs
Empresas• AMD• Azul Systems, Inc.• Canonical• Google • IBM• Intel• Oracle• RedHat• SAP Software Company • Stratus• Twitter
Comunidades• SouJava• London Comunity• JavaBahia• JavaCE• Greenville JUG - (USA)
Distro que usam
• CentOS• Debian• Fedora• Gentoo• Linux Mint• Mandriva• OpenSUSE• Ubuntu
Existem outras JVMs?
• IBM J9• IcedTea• Hotspot (Da antiga Sun)• jRockit (da Oracle)• Apache Harmony• Hewlett Packard JVM
Diferenças entre HotSpot
OpenJDK
Proprietário
JEPS
• 155: Concurrency Updates (Melhorias ConcurrentHashMap, ForkJoinPool e os novos DoubleAccumulator, DoubleAdder, LongAccumulator, LongAdder)
• 170: JDBC 4.2 (Atualização para os tipos de data JSR 310).
• JEP 174: Nashorn JavaScript (Novo motor de JavaScript dentro do JDK).
• 177: Melhoria java.text.DecimalFormat.format, deixando 2x mais rápido.
• 180: Melhoria no HashMap
JEPS
• 180: Melhoria no HashMap
• 182: O javac usará a política de uso "uma mais três atrás" para depreciado
• 183: HTTP Cross-Origin Resource Sharing (html 5)
• 185: Melhoria no JAXB
• 186: Collection Literals
JEPs
• 187: serialização 2.0
• 189: Shenandoah: GC com menor tempo de pausa para grande heaps
• JEP 192: remvoer String duplicadas no G1
Adote o OpenJdk
● Evangelizando● Passando o conhecimento ● Tradução para outros idiomas● Participando de JSR para JSE● Refatoração do código existente● Divulgando o projeto● Realizando tutoriais● Correções gramaticais● etc.
Adote o OpenJdk
● Wiki● Clean Day● Refatoração● Warnings● Tutorial●
Adote o OpenJdk
● Evolução do java Livre● Plataforma madura● Open Source
Adote o OpenJdk
● Network● Novas habilidades● Conhece mais sobre a JVM● Projeto internacional● Ajuda a JVM a te ajudar● Ganha uma Camisa :)● Fazer parte da Comunidade Java
Adote o OpenJdk
• hg clone http://hg.openjdk.java.net/jdk8/jdk8 openjdk
• export LANG=C ANT_HOME=/usr/share/ant/ ALT_BOOTDIR=/usr/lib/jvm/java-7-openjdk/
• cd openjdk
• make sanity CC=gcc CPP=g++• make all CC=gcc CPP=g++
ALLOW_DOWNLOADS=true
Compilação
• sudo apt-get install build-essential libxtst-dev libxrender-dev libxext-dev libX11-dev libcups2-dev libfreetype6-dev libasound2-dev unzip zip ccache
• hg clone http://hg.openjdk.java.net/jdk8/jdk8 jdk_1_8
• sh ./get_source.sh
• sh make/scripts/hgforest.sh pull -u
• ./configure• make sanity CC=gcc CPP=g++
Passos para contribuir
• Diff do código
• Abrir um bug
• Revisão do código• Entregue a versão
Submeter
http://mail.openjdk.java.net/pipermail/core-libs-dev/2013-May/017381.html
Revisão
Versão entregue
Contribuir
E-Book
http://www.slideshare.net/otagonsan/imergindo-na-jvm
#Obrigado
Otávio Santana Bruno Souza@otaviojava @brjavaman