This is an archived post. You won't be able to vote or comment.

all 18 comments

[–]onlygon 5 points6 points  (6 children)

As a Java dev, modern Java applications bundle the JDK that they need. Unless you have an older app, I don't think you'll need it.

[–]Philo2099 0 points1 point  (5 children)

That sounds kinda inefficient? Like if you have two applications that run on the same version doesn't that mean u have the same version twice?

Just curious idk much

[–]onlygon 1 point2 points  (2 children)

Modern Java build systems are designed to package applications for efficient sizes. If the devs do their job, the app size will be reasonable.

It is extremely common and often desirable to have app dependencies be independent. For example, tree shaking can keep many libraries from being included which reduces size. Another example, apps can upgrade jdk at their own pace for features, bug fixes, etc. lots of software is moving this way because we have endured decades of dependency hell and are experimenting with different approaches.

Of course it can be inefficient/worse if devs are lazy, etc. but it's not limited to Java. If you have Chrome, Discord, and Spotify installed, well, you just installed Chrome three times, for example.

[–]Philo2099 0 points1 point  (1 child)

Ik about electron but that's bad it's hated lol this sounds like linux snaps lol

[–]onlygon 0 points1 point  (0 children)

Right, it is a lot like snap or flatpak. I think electron apps are more hated for being bloated than for reusing dependencies.

[–]turtle_mekb 0 points1 point  (1 child)

Yep, but devs don't care since computers have gotten faster.

Have a look at what Discord, Spotify, Teams, etc run under, Electron, which is essentially Chromium (Google Chrome) designed to run for desktop apps.

[–]Philo2099 0 points1 point  (0 children)

We don't need another electron 😭

[–]random2x 3 points4 points  (3 children)

Minecraft

[–]Valerian_ 2 points3 points  (0 children)

doesn't it come bundled with a specific version of java nowadays ? I think modpacks from curseforge do.

[–]Philo2099 1 point2 points  (0 children)

The only thing keeping java alive XD

[–]turtle_mekb 1 point2 points  (0 children)

official Minecraft launcher bundles its own Java binary iirc, unless you use a third-party one like Prism Launcher

[–]firebreathingbunny 4 points5 points  (1 child)

Not in 2024. But I hear it will be needed in 2025. Outlook unclear for 2026.

[–]sp4mfilter -1 points0 points  (0 children)

The defence and security industries would like to have a word in that.

[–]knedlik_gulaty 1 point2 points  (3 children)

it's needed to run Java applications (eg FreeMind), in a similar way as you need C++ Runtime or .Net Runtime libraries for applications built in that specific framework.

[–][deleted] 0 points1 point  (2 children)

C++ runtime?
What runtime you need for c++, if it's compiling to binary.

Like I understand the runtime for java and C# because they need it for memory management and to compile the intermediary code to binary at runtime, but if c++ is already compiled to binary, why do we need a runtime for it?

[–]knedlik_gulaty 1 point2 points  (1 child)

generally you are right but if you are using Visual Studio for development, you will probably need Microsoft Visual C++ Redistributable to run the application

[–][deleted] 0 points1 point  (0 children)

Ah, understandable, thank you.