Tuesday Mar 29, 2016

Moving to Garbage First

Garbage First (G1) is likely to become the default collector in Java 9. In this presentation, Kirk Pepperdine shows different case studies on how to use the G1 with your applications. He also demonstrates tips and tricks to work around some of the hiccups. 

In this interview, Kirk Pepperdine shows his Censum performance diagnostics tool from jClarity and describes the state of G1 GC 

Waste Management in JDK 9

“Instead of a simple garbage collector to free up memory, Garbage First (G1) takes the role of a waste management consultant: freeing unused memory and identifying ways to reduce the overall amount of garbage.” explains Eric Costlow in a new blog

Costlow demonstrates how string Deduplication can significantly decrease heap usage. Using the Eclipse IDE, he runs a performance test using Java Flight Recorder to benchmark the results.

Monday Mar 28, 2016

Module System in JDK 9

From original blog post by Mark Reinhold 

The module system (JSR 376 and JEP 261), was integrated into JDK 9 last week and is now available for testing in early-access build 111.

Project Jigsaw is an enormous effort, encompassing six JEPs implemented by dozens of engineers over many years. So far we’ve defined a modular structure for the JDK (JEP 200), reorganized the source code according to that structure (JEP 201), and restructured the JDK and JRE run-time images to support modules (JEP 220).

Like the previous major change, the introduction of modular run-time images, the introduction of the module system might impact you even if you don’t make direct use of it. That’s because the module system is now fully operative at both compile time and run time, at least for the modules comprising the JDK itself. Most of the JDK’s internal APIs are, as a consequence, fully encapsulated and hence, by default, inaccessible to code outside of the JDK.

An existing application that uses only standard Java SE APIs and runs on JDK 8 should just work, as they say, on JDK 9. If, however, your application uses a JDK-internal API, or uses a library or framework that does so, then it’s likely to fail. In many cases you can work around this via the -XaddExports option of the javac and java commands. If, e.g., your application uses the internal sun.security.x509.X500Name class then you can enable access to it via the option


This causes all members of the sun.security.x509 package in the java.base module to be exported to the special unnamed module in which classes from the class path are defined.

Read more

Thursday Mar 24, 2016

DukeScript and Duke Sewing

 “There is no Java on some of the new devices and we wanted to change that” explains Author and JavaOne rock star Toni Epple. He describes the DukeScript project and how you can use it for cross-platform development on mobile, desktop and web browsers. Discover his new project to automatically sew a Duke design.  

Docker for Repeatable Builds

Learn how to create reliable, fast and repeatable builds. Andrzej Grzesik  presents a case study of an externally facing API project with complex dependencies and different approaches to improve processes and quality. It explores build infrastructure, from under-the-desk bare metal, through ad hoc provisioned VMs, as well as containers. 

Wednesday Mar 23, 2016

New Java SE Releases

Java SE 8 update 77 (Java SE 8u77) and Java SE Embedded 8 Update 77 are now available. Oracle strongly recommends that most Java SE users upgrade to the latest Java 8 update 77, which includes important security fixes. You can download the latest releases from Java SE and Java SE Embedded pages. 

For information on new features and bug fixes included in these releases, see the following release notes: 

Call for Papers JavaOne Latin America

JavaOne Latin America 
São Paulo, Brazil
June 28 - 30, 2016 

The biggest Java event in Latin America is back June 28 - 30 in São Paulo. Join us for a great opportunity to learn and discuss Java, emerging languages, big data, Cloud, tools and more!  Meet like-minded developers and share a fun three day conference.

Be one of the speakers who will share their experience and knowledge at JavaOne Brazil 2016. The Call for Papers is open until April 5, 2016 midnight BRST. Submit your proposals in Portuguese, Spanish or English. Sessions will be in one of the three languages.   

Speakers on accepted sessions receive a complimentary pass to JavaOne Latin America 2016 (one per speaker, non-transferable). 

Thursday Mar 17, 2016

Java Dependency Management with Maven

Maven plays an important part in continuous integration and continuous delivery to speed up the development lifecycle, explains Cesar Hernandez in his article titled "Java Dependency Management with Maven". It is a powerful and mature build automation tool that has become a de facto tool for dependency management in Java projects.

Maven provides many ways to automate the application development lifecycle and the management of Java dependencies for Java projects. A key component of Maven is repositories, places where you can obtain and share dependencies (artifacts). Repositories allow developers to access thousands of tools, libraries, and frameworks from the open source community. Another key aspect of Maven, which has helped it to stay up to date, is its extensive plugin capabilities. To see how to take advantage of this powerful tool, read the article.

Wednesday Mar 16, 2016

Software Module Hell

“The more packages we support the more hell it is” explains JFrog developer advocate Baruch Sadogurdky. He discusses the pitfalls of package management, and what works and what doesn’t work in a module system. 

Tuesday Mar 15, 2016

In-Memory Data Grids‬

What is an in-memory data grid? Senior Solutions Architect Viktor Gamov gives an overview of in-memory grids including their requirements and the best use cases. Watch this video interview with Stephen Chin 


Insider News from the Java Team at Oracle!



« May 2016