Hacker News new | past | comments | ask | show | jobs | submit login
Tell HN: Oracle now requires you to login when you try to download JRE
137 points by dmitriid 9 months ago | hide | past | web | favorite | 81 comments
Oracle now requires you to create an account and login when you try to download JRE from the JRE download page at https://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html

This was part of the master plan and roadmap for Java for a long time now. This should not be a surprise or cause any outrage. The roadmap was:

1. Oracle starts to relicense as open source most parts of the JVM, spinning off OpenJDK in the process.

2. Oracle provides support, patches, community and endeavors to help get OpenJDK self-sustaining.

3. Once OpenJDK is maintained by the open source community and generally healthy, Oracle starts working on proprietary value-add additions that can benefit their customer base (and bank accounts).

We're entering phase 3. Oracle, beyond what you might think of them, has done a pretty decent job of following the overall plan. They have helped get the OpenJDK community off the ground and are still invested in its success.

Without doing the above, there was real risk that Java would succumb to other more open platforms or be splintered off by companies like IBM, Redhat, etc. Instead, the above plan allowed for Oracle to keep the core of Java in one piece, conceding that other companies would help with its evolution, and still reserve their ability to make a buck later.

It's a little shaky right now with all the hubbub about Oracle's licensing of the Oracle JVM. The messaging could have possibly been better. But if you haven't been aware of the OpenJDK and following along with it - if your sole source of all things Java has been Oracle - then it's definitely time for a wake up call.

Oracle is now a member of the Java community, not necessarily the driver.

> Oracle is now a member of the Java community, not necessarily the driver.

I agree that, all in all, Oracle told the world what it's going to do and now is executing on the plan. It's no surprise really, and it makes sense that they want to make money somehow from Java considering how much they are putting into it.

Still, Oracle is most certainly the driver still. If you look at a chart like [1] you see that Oracle has an order of magnitude more commits than the 2nd company which, surprise, is SAP.

Also, if you read the OpenJDK bylaws [2] the OpenJDK Lead will forever be from Oracle as will the Board Chair. Oracle will never lose under a Two-Thirds Majority rule when they have 2 of the 5 seats.

Note how AdoptOpenJDK could not run the TCK on the JDK builds which included OpenJ9.

1. https://blogs.oracle.com/java-platform-group/building-jdk-11... 2. https://openjdk.java.net/bylaws

Yeah, good points and thanks for refuting my statement with precise references.

I think I was just trying to be a little more generous or wishful with my statement. Maybe I'm hoping that we are heading in a direction that doesn't require Oracle in the lead. Right now, Java needs Oracle as much as ever. And if Oracle continues to provide good leadership and does the right thing by Java, then why not continue to have them in the lead? I'm happy they are there and continue to provide good stewardship for Java.

I think the Java community could, if needed, fork Java completely away from Oracle. This would be a major undertaking with a lot of pain, and would definitely require other parties to get even more onboard. But at least now, with the way things are set, this could start to be a possibility if we ever needed it.

I work on OpenJDK at Oracle, and there are several inaccuracies in your account.

First, not only has OpenJDK not been "spun off", OpenJDK is the name of one and only JDK project at Oracle. It is not the only product, but it is the only project.

Second, while we happily cooperate with other contributors like Red Hat and Google, and greatly appreciate their contributions, Oracle is not only very much in the driver seat, but ~90% of the work on OpenJDK is done at Oracle. Nearly 100% of new large features are led by Oracle.

Third, I don't know about add-ons, but the transition we've recently done was open source all of the previously proprietary features in Oracle's JDK. Oracle's JDK is, for the first time since Java's inception, 100% open source.

I agree that the messaging could be better (we're working on that). The licensing change, from a semi-free/open, semi-proprietary/paid JDK to a 100% open source license combined with optional paid support has, indeed, confused some people. That it came at the same time as a change in how we name our releases has only added to the confusion.

In any event, the recommended path is to use the current JDK, for which you get perpetual free support (by which I mean patches and updates) from Oracle, or from other sources. Java 9 was the last major release ever, and if you follow this recommended, default path you'll never have another major upgrade again. We believe that it is the easiest, cheapest upgrade path Java has ever had. Companies that for some reason cannot follow the cheap, easy path and prefer large but planned upgrades, can stick to the paid LTS service, and that is how Oracle funds OpenJDK.

In the past, when much of the JDK was closed, Sun and then Oracle funded the JDK by licensing Java for mobile/embedded devices (as there were field-of-use restrictions) as well as that annoying search toolbar, and the sale of quite expensive support. All of that is gone when we changed our funding model. Everything is open source, no field-of-use restrictions and no search toolbar. Everything is funded with support, and the prices have been cut drastically to be competitive with other companies that offer OpenJDK support.

This is annoying. https://java.com/en/download/ will give you the download without signing in. But if you happen to be directed to https://www.oracle.com/technetwork/java/javase/downloads/ instead, say through a google search (which is the top search result on Google for me), you have to login.

java.com will give you a JRE distribution only. e.g. all the parts that you need to run java, not the parts that you need to develop it.

The oracle.com link that you refer to is the source for the Oracle JDK, which includes the compiler, etc.

No, scroll down. It gives you the option to download the JRE as well, and that's the one that requires a login. If this were some obscure link you had to go out of your way to reach, it wouldn't be a big deal. However, depending on the alignment of the moon and the sun, the link might be the top of the Google search or it might be second or third. I refreshed a couple of times and got slightly different results, it was always near the top though.


This is the direct link Google gives me and it's the one that requires a login.

Good for them, with some luck they'll even pull some Open Solaris to Solaris to Death move.

Meanwhile: https://adoptopenjdk.net/

Or https://www.azul.com/downloads/zulu-community/ which claims to be TCK-tested (whatever that means)


Thank you it worked out pretty well for the application with which I've been using it the most. Never seen it starting so fast.

Are there any downsides to this?

The Oracle JVM and the OpenJDK JVM (as provided by AdoptOpenJDK and friends) are for all practical purposes identical. There was a time when OpenJDK was still young that you'd probably prefer the Oracle JVM. But since maybe 5-7 years now, the Oracle JVM is basically composed of the OpenJDK plus some additional Oracle licensed features that don't affect many/most applications.

In short, use the OpenJDK for your project. There are no real downsides for 98% of applications. AdoptOpenJDK is a great source, or likewise vendors like Redhat who are also maintaining OpenJDK distributions.

Thank you. I'll keep it :)

My only experience with OpenJDK is trying to run Minecraft with it at much worse performance than Oracle's JRE

Probably not a bad idea since the Oracle JRE/JDK is not free to use. It helps push people to OpenJDK distributions.

I'm proof of that happening, actually!

I ran into this login page a few days ago when setting up a new machine. It was enough friction to make me think "wait, what am I doing?", and use brew to get OpenJDK instead. That's a better decision all around, so in a weird way I'm grateful.

How does that work in practice?

If I google "Java Runtime" I get Oracle's site, mirrors of Oracle's site, then very sketchy sites claiming to offer similar (which I can only assume are malware). That's the first page of Google's results.

How are people meant to find and use these alternatives?

Agreed. It's going to take awhile for the search indexes to start offering better OpenJDK sources. As Oracle has moved its version of the JVM to a paid/registration model, the marketing and awareness of other alternatives are somewhat catching up.

So here you go:

AdoptOpenJDK - supported by a number of commercial companies and individuals committed to keeping the OpenJDK environment easy to use and integrate. Get your Mac, Windows and Linux JVMs here. https://adoptopenjdk.net/

Redhat - Maintaining the JVM long term support versions for their distributions, which includes inclusion by CentOS, etc.

Apt/Debian/Ubuntu - I'm not totally sure who is maintaining the Apt version, but Ubuntu and others have the LTS version of the JVM available as well.

Also, Amazon Corretto, supports Windows, Macs, and Linux. https://aws.amazon.com/corretto/

Yes, thank you! Good catch and good addition. I'm actually quite interested to see where Amazon takes this.

Afaik, Oracle maintains their own distribution of the OpenJDK[1] and it requires no login.

[1] https://openjdk.java.net/

Yes, but they only offer the short-term support versions there. e.g. Java 12. The long-term support versions (Java 8 & Java 11) are only offered by Oracle through a paid subscription.

It's complicated, but to try and summarize:

- Oracle will lead the development of the short-term supported OpenJDK versions and will make the compiled distributions available for free. This is currently Java 12.

- Oracle will also develop and maintain proprietary long term support versions for their paid subscriber base. This is currently Java 8 and Java 11.

- Oracle will release source-code patches for Java 8 & Java 11 as they make them for the LTS releases.

- Other companies/organizations will maintain their own LTS release versions and will apply the source patches to keep their versions up to date.

AdoptJDK, Redhat/IBM, Ubuntu, and Amazon all maintain their own LTS versions (Java 8 & 11). They take the patches offered by Oracle and maintain their own distributed binaries based on them. These companies (along with other contributors) also make their patches available to Oracle.

Think of Java now like you think of the Linux kernel. The kernel itself receives patches from all sorts of contributors. Various Linux vendors compile and provide the Linux kernel as part of their distribution. You don't go to kernel.org to get the compiled binary for your Linux system; you go to a Linux vendor for that.

Likewise, you need to go to a Java vendor to get a compiled convenience binary for your platform. AdoptOpenJDK offers a pretty friendly distribution for all the various platforms (Mac, Windows, Linux).

Ohh I see. I oughta know this stuff since I do use JVM languages from time to time but I didn't. Thank you!

It also has no Windows installer - it's a bare zip archive. In order for all the existing software that expects Java installed to find it you need to set several environmental variables and registry keys. AdoptOpenJDK has an installer that can do all that for you, making it pretty much a drop-in replacement for the old JDK and JRE downloads. There's almost no way for anyone who wants to run older software that needs Java to discover AdoptOpenJDK though.

Only old versions of Oracle binaries require login, the current version (12) does not, either on https://www.oracle.com/technetwork/java/javase/downloads/jdk... or https://jdk.java.net/12/

I wouldn't quite say "old versions" - it's possibly better to say LTS versions (long term support). The LTS versions are what Oracle is requiring registration/payment for now; so if you want to stay on the "Java 8 Oracle JVM", you'll have to pay for that privilege.

Or alternatively, you can get a LTS version from another vendor based on the OpenJDK source. For example, AdoptOpenJDK or your Linux distribution.

Basically, Java is suffering from the Windows XP problem right now. Nobody supported anything above Java 8, so everyone's still trying to use it, and Oracle's done with giving it out for free.

Ish. This move would have eventually happened even if the community had jumped on Java 9+ from day 1. Oracle is all about monetizing and reducing costs, doing that with Java was always on the cards. It just so happens that it comes at a time when there is also an upgrade issue from a technical perspective.

>Oracle is all about monetizing and reducing costs, doing that with Java was always on the cards.

You might not like Oracle, but let's be fair here. They completely open sourced the JDK and encouraged other vendors to ship compatible versions. They charge only for support. You can get the identical product with no support absolutely free.

I don't see where I criticized them, it's a perfectly legitimate strategy - part of the reason Oracle is still around and Sun isn't. No need to be defensive.

Oracle might have found a way to make money without being hated (too much) by the community, which I think is a positive development. There is some credit for Sun, which (iirc) is where the move towards OSS started; but Oracle is adding the $$$ aspect they are famous for, which Sun could never quite crack.

they are making it easier and easier to decide to switch to https://adoptopenjdk.net ...

To be brutal, they want exactly that. “All dem troublesome hack3rZ and early adopters” should go play with openjdk, and leave Oracle free to deal only with Big Boys who want Serious Support Contracts for Big Apps that will probably move to Java11 in 5 years’ time (if ever).

Oracle is trading (some) control on the ecosystem and tech, for commercial opportunities to monetize the existing userbase. It doesn’t matter to them if 90% of people move to OpenJDK, as long as the remaining 10% (and lower development costs) nets them more money than they make at the moment.

That's not a website aimed at consumers though. All the questions they're asking should be hidden in "Other Platforms" with one giant link saying "Latest Release."

I don't care about the politics or niche between HotSpot Vs. OpenJ9, and reading the descriptions it sounds like 99% of people who don't know better want HotSpot and JDK 12, so why even ask these questions?

That website is a perfect showcase of why OpenJDK isn't popular. Oracle's consumer experienced is ten times better: https://www.java.com/en/

There is admittedly some baked-in expectation that you understand or have background for the nuances of Java 8, 11, 12 or Hotspot, OpenJ9. The website currently expects you to understand these differences. Good feedback, noted.

But honestly, the website itself is not hard to understand. It gives you a choice of three JDK versions (8, 11, 12) which are all supported versions. And it gives you two choices for JVM (Hotspot, OpenJ9). And of course, you need to pick your platform.

If you're coming brand new to the Java world, this is most definitely a cumbersome landing page. But for most people already in the Java world, these questions are quite relevant and appropriate. And the default choice (Java 8 + Hotspot) are quite sensible for most newcomers.

Oracle's java.com website doesn't really give you the developer experience needed for Java. That's more focused on delivering the end-user JRE, not the developer JDK.

> That's not a website aimed at consumers though.

Java isn't aimed at consumers, either.

So developers are writing Java Runtime software that nobody is running at all?

Oracle recommends developers pack a JRE with their individual applications now.

No need for users to install a JRE or even know they’re using a java application.

Wouldn't users still need a license to run Oracle's JRE?

They don’t need to use oracle JRE. Oracle has fully open-sourced the JRE under GPL (unlike Sun).

If an app developer wants to use a version of the JDK other than that freely supplied by Oracle at https://openjdk.java.net/ , they can distribute AdoptOpenJDK, Apache Corretto, or any of the many other openjdk distributions.

There's a reason B2B is distinguished from B2C.

Brew and apt will both get you openjdk, which is nice. Since that also sets up JAVA_HOME and avoids the ludicrous Ask.com adware Oracle has been bundling, it's become a pretty easy choice.

I don't think the Oracle bundling of Ask.com adware has been part of the distribution for a long time now. Like 5-7 years or so? Can't remember exactly.

But to your point, the whole fiasco of including ask.com sure gave Java a black eye. This was the worst thing that Oracle could have ever done for the adoption of Java. So dumb.

But anyway, all downloads of Java regardless of source (to my knowledge) are free from that adware now. Definitely all the OpenJDK distributions are, which you should likely be using anyway.

Thanks, I didn't realize how out of date I was on that whole Ask debacle. Shows how long it's been since I downloaded the Oracle JDK by hand, I guess...

In any case, I'm impressed that OpenJDK manages to be a clear winner on all of access (no login needed), convenience (package managers set up paths), and principle. FOSS doesn't usually have a reputation for being faster and easier to set up than its owned alternatives.

Can't you just download it here: https://java.com/en/download/manual.jsp

Yeah not sure what the problem is. Google "download java" and this is the first link.

Oracle has two different links up, one of which requires a login. Searching "jdk download" on a clean machine brings me to the technetwork page which requires a login.

Maybe the title should be modified to: “Tell HN: It’s now slightly harder to find a Java download link in a few seconds of searching”

Its not in the first few links on my Google search. Same with someone else in this post

Google results are influenced by your search history.

This gives you a download of the JRE (the runtime components), not the JDK (the developer components). So if you're an end user of Java with no desire to compile your own Java projects, the java.com site will give you what you need.

Note also, java.com will only give you the latest short-term support version, which is currently Java 12. So if you want a LTS version, you will have to go elsewhere.

> This gives you a download of the JRE

But the post title says JRE, not JDK.

Could be wrong but this has always been the case if the jdk/jre is not the very latest download?

Yep, since Sun days already, but lets not let that stand in the way of releasing some Oracle hate.

Oracle Java 8 is no longer freely supported. Switch to OpenJDK and move on if you don't need their support.

This has always been like that. You can download the current version JRE, either from java.com or https://www.oracle.com/technetwork/java/javase/downloads/jdk..., where you can get the binaries just by accepting the license agreement.

The same holds for the current version JDK.

For older versions, login has always been required.

So please, don't spread FUD like this.

There are alternative JRE/JDK distributions, including Coretto (Amazon), Zulu (Azul), OpenJ9 (IBM), AdoptOpenJDK (jClarity/Microsoft).

Usual anti-Oracle FUD.

Already during Sun days one needed to login for EOL versions of Java.

JRE was EOL as per Java 9 release.

The only JDK you might be able to download from them without needing an extended support license is JDK 12 - and that is only until October 16th. Every other JDK/JRE version, from 6u211 to 11.0.4 only has the patched versions available with a login. They might have had older releases still public, but those were a huge source of grief. 7u80 was the last public version, but 7u231 (if I remember right) is the latest release. You really, really don't want to be using those unpatched versions.

Adopt OpenJDK has a great long term support release for v8 and v11 of the JDK/JRE. Free as in beer.

Good thing that Android Studio includes its own JRE.

So does all its Jetbrains bethren, like Pycharm, Rubymine, PHPStorm, Idea.

You can completely avoid this by using a package manager - Homebrew on macOS, apt on Debian/Ubuntu, yum on Redhat/CentOS. I don't use Windows but I am sure there should be something similar. You also don't need to use Oracle's distro any more. AdoptOpenJDK is a great alternative.

That is because that version is intended for support customers. To get the JDK with a free, open-source license, download it here: http://jdk.java.net/

(I work at Oracle on the JDK)

They have put the newest mysql server behind registrationwall aswell. Really annoying

And they spam you incessantly for months afterward.

While we’re at it, is there any sane way to run Java applets these days...? I know applets are obsolete a.f., but some legacy systems from large/important vendors still require them.

Internet Explorer should work with JRE 8.

I install mine via brew, but IIRC https://sdkman.io should easily solve this too.

Yeah I think there is a work around.. but it will take this comment board to bubble it up

Is the workaround downloading a newer version?

Because this works for me.

Not that I would do this unless I'm prevented from downloading OpenJDK.

So are they trying to kill the platform?

No, they're trying to make money off of it. I assume they're looking to figure out how to make a lot of money off of it, to make up for shrinking enterprise software revenues.

It may be that their efforts to increase profits right now also inhibit Java's pre-eminence in the open source community over the long run. I doubt that's a major concern for them. Oracle is a Fortune 500 company, not a nonprofit foundation.

It's still sad, though. Java got where it is thanks to Open Source.

Java's push onto the web failed (applets), Java's push onto desktops failed (AWT/Swing), Java's push onto mobiles failed (Java ME; Android doesn't count, Google did it despite/against Sun/Oracle). The only truly successful Java domain is Java backends, which was rescued from Java EE hell by Apache, basically.

I'm honestly not that sad.

In the enterprise, open source looks a fair bit like a Java monoculture, and it's one that's become way too heavily influenced by the interests of a very small number of corporations. It's another story that starts off looking like a big success for open source, and ends by looking like a big success for co-opting open source.

I'd be pretty happy to see Java fall down a peg or two, so that we can move back toward being a bit more bazaar and less cathedral.

.Net Core, on the other hand, looks better and better. It's expected to hit 3.0 next month. If I were making a stack decision today, barring some very specific library/integration requirements, I'd rather pick it or Go over Java.

How is that Xamarin.Form GUI designer doing on .NET Core for Linux?

Focusing on .NET nowadays, but there are definitely a few areas where .NET Core fails short of Java offerings.

>The only truly successful Java domain is Java backends

Java Card runs on 1+ billion devices.

I'll be cynical and say: Yeah, and what do I care? As a developer I care about employment. How many people do you know writing Java Card code? How many does the world even need? I'm willing to bet that there's at least 100 regular Java devs for 1 Java Card dev.


It never ceases to amaze me how the JDK and dotnet core have flipped in their relationship to the software engineering community.

What was once open is closed. What was once closed is open.

Java is just as open as it always was. Oracle has been gradually moving itself away from being the sole source & driver of Java. OpenJDK is open and free, and is both community-supported and driven by several companies prominent in the Java ecosystem.

Oracle JDK is based on it, and Oracle is adding proprietary features so they can make a buck.

Honestly, I'd say the new situation is better than the old. Oracle no longer has the stranglehold over Java that they had since they bought Sun.

Java is as open as ever. Oracle is not in charge of Java and is not taking it closed source. They are a huge supporter of open source Java, contributing the most patches to the open source version. Oracle happens to have a paid subscription model as well, that helps to fund continued open source contributions. No doubt other companies will have (or have now) similar subscription models surrounding the open source platform.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact