Eclipse Oxygen Plugin Install Fails or Read Repository Issues on Linux

You’ve recently upgraded to Java9, most likely using OpenJDK and you’re trying to install some plugins perhaps in Eclipse Oxygen or you’re engaged in some other activity trying to access a repository and you’re getting failures. Perhaps you’ve even tried to install by way of “dragging the button” onto Eclipse and now after restart your installation has become corrupted. What’s even more frustrating is that possibly some repository access seems to work, while others fail. You see messages like trustAnchors parameter must be non-empty and wonder what that means.

What’s the problem?

SSL Certificates

You might have already guessed it.. certificates. Specifically SSL certificates or your cacerts keystore (i.e. root certificates).

There’s been a recent development with the OpenJDK project with Java9 partly in preparation for subsequent releases like Java10 and also due to wanting easier “merging” with OracleJDK that causes this known issue to occur.

While there are some hack solutions to fixing this, and if you are familiar with my articles, you would think that I would provide such a thing. However, in my opinion, at this point you are better off using the official OracleJDK for version 9 stop these issues from cropping up.

Fortunately most distributions will automatically uninstall all OpenJDK packages and install with the correct Oracle equivalents. However there’s always the trusty sudo apt remove openjdk-9-jdk openjdk-9-jre

OracleJDK Installation

There’s the PPA method:

# sudo add-apt-repository ppa:webupd8team/java

# sudo apt-get update

# sudo apt-get install oracle-java9-installer

You may have to also install set default, which some distributions do not automatically install with the installer.

sudo apt install oracle-java9-set-default

Then there’s the official manual installation through Oracle.

  • Head to www.oracle.com
  • Navigate on their site menu to Downloads & Trials
  • Navigate to Java for Java Developers
  • Select Java SE
  • Choose Java 9
  • Accept the License Agreement (may have to login)
  • Download
  • *Do the usual: sudo tar xvzf jdk-9.X.X_linux-x64_bin.tar.gz -C /opt

*  /opt/ installation is usually the best way to go

Remember to update your environment variables. For example in BASH shell you can edit /etc/bashrc and set

export JAVA_HOME=/opt/jdk-9.X.X
export PATH=$PATH:${JAVA_HOME}/bin

Not Enough

However, that’s unfortunately not going to be enough in some situations.

This is actually a major situation that’s been brewing recently and there are articles, messages, and comments all over the place from application specific email/Google groups to the Stack Exchange (e.g. stackoverflow.com) with everyone frustrated.

There’s also been other issues with older articles still up and running providing outdated advice on installation setups and using links to deprecated software. 32-bit versions of everything are hitting the wall against their 64-bit counterparts (don’t get me started on JavaHL issues).

Fortunately I think 32-bit vestiges will be completely eradicated by end of year 2019 (next year) and we’ll finally have everything uniform with 64-bit. (I’m talking SVN / Subversion applications, drivers, plugins, dev kits, IDEs, etc.) Furthermore, I see Java 8 finally being largely dropped and Java 9 fully embraced by the majority of popular applications and plugin suites. However, most importantly, the package maintainers fixing, plugging, patching all the differences between OracleJDK and OpenJDK, as well as the Java9 packages in the major distributions (e.g. Ubuntu, Red Hat)

If anyone has discovered a good working method (especially if its for Linux or specifically Ubuntu) I would very much appreciate you leaving a comment on how to below!

 

Belisarius Smith consults as a software engineer, cloud engineer, and security adviser. He has a BSBA in Security Management and is currently completing graduate studies in the Engineering Department at Penn State University with a Masters of Software Engineering. When he isn't traveling, mountain climbing, or reading, he spends his spare time on personal side projects and studies.

Leave a Reply