Java Archive

Java 22 released

Java 22 ships the final versions of the Foreign Function and Memory API as well as the Unnamed Variables and Patterns API. Plus Java 22 brings region pinning for the G1 garbage collector, statements before super(…) are in preview phase, a class-file API preview, support to launch multi-file source code programs, the latest work on the Java Vector API, Stream gatherers in preview, the second preview for structured concurrency programming, and various other additions. ↫ Michael Larabel at Phoronix You can find the GPL-licensed OpenJDK builds at the OpenJDK website.

Java 21: The Nice, The Meh, and the… Momentous

Every six months, there is a new Java release. Ever so often (currently, every two years), Oracle labels a release as “long term support”, and Java users wonder whether they should upgrade. In theory, other JDK distributors could offer “long term support” for other releases, but it seems everyone is following Oracle’s lead. Should you upgrade? Here are the major features of Java 21. I omit preview and incubator features (which you are surely not going to use in production), JVM internals, highly specialized features such as this one, and deprecations. The answer is yes – you should definitely upgrade.

Java 21 released

Java 21 introduces the notion of sequenced collections, the Z Garbage Collector (ZGC) has been extended to maintain separate generations for young and old objects for improving Java app performance, virtual threads are now out of preview form, and the Windows 32-bit x86 port has been deprecated for removal. Java 21 also brings some new preview features including string templates, the latest iteration on the foreign function and memory API, unnamed classes and instance main methods, scoped values, and structured concurrency. You can find the GPL-licensed OpenJDK builds at the OpenJDK website, and the closed source builds from Oracle are also available.

Java 21 makes me actually like Java again

Java 21 will be released on September 19, 2023, supporting record patterns in switch blocks and expressions. Such syntax is monumental (At least, in Java land). It marks the point where Java could be considered to properly support functional programming patterns in ways similar to Kotlin, Rust, or C#. And it marks the first point where I can say, as a Kotlin developer, that I feel jealous. I’ve got nothing to say about matters such as these, so I’ll just quietly back away and let you all handle it.

The decline and fall of Java on the desktop part 1 (1999-2005)

This is the first in a series of articles about the history of Java on the Desktop, from my perspective as a developer who started working with Java in the late ‘90’s. I’m writing this, partly as a background for why I created jDeploy, a developer-friendly desktop deployment tool for Java. Despite the ominous tone of this article’s title, I believe that Java is a compelling platform for modern desktop applications. Stick around for the whole series to find out why. Isn’t Java still one of the languages every aspiring programmer learns in school?

The 25 greatest Java apps ever written

What follows is a list of the 25 most ingenious and influential Java apps ever written, from Wikipedia Search to the US National Security Agency’s Ghidra. The scope of these applications runs the gamut: space exploration, video games, machine learning, genomics, automotive, cybersecurity, and more. It’s posted by Oracle and thus it makes me feel dirty to link to it, but I guess it’s still an interesting list – albeit with one obvious, huge, giant, inescapable elephant of an mission.

Java’s new Z Garbage Collector is very exciting

Java 11 has recently been feature frozen and contains some really great features, one in particular we’d like to highlight. The release contains a brand new Garbage Collector, ZGC, which is being developed by Oracle that promises very low pause times on multi-terabyte heaps. In this article we'll cover the motivation for a new GC, a technical overview and some of the really exciting possibilities ZGC opens up.

Why would you look at that - I get to use the Java database category.

Sun’s Project Looking Glass debuted 14 years ago

Almost 14 years ago, way back in 2003, Sun Microsystems unveiled Project Looking Glass, a 3D desktop environment written in Java and making extensive use of Java 3D. The demo, by Jonathan Schwartz, always stuck with me over the years, and since YouTube recommended the demo to me today, I figured it'd be interesting to you remind you all of simpler times, when flipping windows around and 3D rendering in Java actually managed to get us excited (something no other project would ever manage to... Wait.).

Project Looking Glass was developed for about three years, and it actually saw a 1.0 release in late 2006. It's one of those random projects exploring what we then thought could be the future of computing, right before the iPhone came onto the scene and changed everything. While nothing came out of Project Looking Glass, Schwartz' demo did teach me the phrase "arbitrarily clever", which I'm unusually attached to.

LWJGL 2.9.0 released

The Lightweight Java Game Library provides a simple API to OpenGL, OpenAL, OpenCL and Game Controllers enabling the production of state of the art games for Windows, Linux and Mac. Version 2.9.0 contains a complete rewrite of the mac backend, support for FreeBSD, new OpenGL/OpenCL extension and bug fixes. The library is used by many high profile games such as Minecraft, Spiral Knights, Revenge of the Titans, Project Zomboid, Starsector, JMonkeyEngine, etc.

RoboVM 0.0.1 released

The first preview release of RoboVM has just been made available. The primary goal of the project is to make it possible to develop native iOS applications in Java that use native iOS Cocoa Touch APIs. The RoboVM compiler translates Java bytecode into ARM or x86 machine code. The core classes (java.lang, java.util, java.io, etc.) are based on Android's runtime classes. RoboVM's compile time tools are GPLv2 licensed while the runtime is released under business-friendly licenses, mostly the Apache License v2.0.

Project Sumatra improves Java performance with OpenCL

"Java is a programming language that allows developers to write once and deploy everywhere - from high-end gaming desktops to smartphones. Its OS-agnostic and widespread nature is one of its strongest selling points, but one area where it can fall flat is performance. Generally, Java applications are not going to perform as well as native applications written for a specific OS. However, thanks to Project Sumatra that performance gap may soon become less of an issue."

Oracle’s Latest Java Moves Draw Industry Ire

Two years hence, Oracle's stewardship of Java continues to raise user and vendor ire, this time due to modularization, licensing, and security concerns. 'Plans for version 8 of Java Platform Standard Edition, which is due next year, call for inclusion of Project Jigsaw to add modular capabilities to Java. But some organizations are concerned with how Oracle's plans might conflict with the OSGi module system already geared to Java. In the licensing arena, Canonical, the maker of Ubuntu Linux, says Oracle is no longer letting Linux distributors redistribute Oracle's own commercial Java, causing difficulties for the company. Meanwhile, security vendor F-Secure views Java as security hindrance.'

Java To Be Removed from Ubuntu, Uninstalled from User Machines

Oracle's Sun Java JDK packages are to be removed from the Ubuntu partner repositories and disabled on users systems. Oracle, in retiring the "Operating System Distributor License for Java," means Canonical no longer have permission to distribute the package. The change will affect Ubuntu 10.04 LTs, Ubuntu 10.10 and 11.04 users only. Users who have the "sun-java-6" package installed on their system will see it removed via a future software update -- the exact date of which is "TBD."

Java Tops for Hackers, Warns Microsoft

Patch up warmly this winter if you're running Java. That's the advice from .NET shop Microsoft, which reckons Oracle's platform is the single biggest target for hackers. Java proved the single most popular target in the 12-month period to the end of June, according to Microsoft's latest Security Intelligence Report has found here Running Java as a Web-browser Plugin is much more dangerous than Flash, and should disable the Java Applet Plugin.

Java Cloud Platforms Compared

InfoWorld's Peter Wayner provides an in-depth comparison of four Java cloud platforms, putting CloudBees, Google App Engine, Red Hat OpenShift, and VMware Cloud Foundry through their paces to 'reveal the pleasures and perils of coding on a public cloud platform.' 'The danger of lock-in seems to lurk around every corner, and that's not necessarily the worst part. What if we're happy with everything about our cloud except we need one missing feature that the cloud's masters either can't or don't want to deliver?' Wayner writes. 'Some of the clouds rely upon standard tools that take standard WAR files and deliver their information to the world. Others have so many proprietary twists that you might as well tattoo the code on your arm -- it's going to be with you for the rest of your life.'

Java SE 7 Released

"Java SE 7 is officially released today! After nearly five years of collaboration within the worldwide Java community, Java Platform, Standard Edition is ready for download! It's an important step in Java’s evolution. Thanks to everyone who suggested features, reviewed specs, argued on mailing lists, talked about Java 7 at your JUG meeting, submitted bugs, wrote blogs and tweeted about #java7."

JDK 7 RC1 Released

"After an initial round of testing we've declared build 147 to be the first Release Candidate of JDK 7. There are only thirteen changes in this build. Over half of them are administrivial updates that don't affect the actual code; the remainder are true showstoppers, including several hard VM crashes and a JIT correctness bug identified by an Eclipse unit test. If no new showstopper issues are reported, and if JSR 336 and the component JSRs pass their Final Approval Ballots in the JCP, then this will be the GA build for release later this month per the schedule posted back in January."