Skip to content

Java Versions

parg edited this page Mar 24, 2021 · 13 revisions

BiglyBT's minimum and recommended Java version is 8 (or 1.8 as it is also known)

While newer versions of Java have exciting bling they also often deprecate features that are used by BiglyBT. Of interest:

  • Version 15: The Nashorn JavaScript engine was removed. This prevents the JavaScript automation features of BiglyBT from working. As this feature is pretty much unused (as far as the developers know) it may not be significant. Apparently GraalJS can be used as a replacement but this has not been researched.

  • Version 16: Finally enforces module encapsulation, up until this version warnings were logged but the functionality still worked. BiglyBT uses its own 'DNS Service Provider' proxy to prevent the attempted resolution of I2P and Tor addresses via DNS (as this leaks information about the addresses). Back in Java version 8 there was an offical way of doing this. The was removed in a later version at which time a 'hack' was used via reflection to continue supporting the behaviour. Unfortunately this hack involved injecting BiglyBT code into the Java runtime. Version 16 finally causes this to fail as the Java Module system now prevents such cross-module reflection. There is still a work around but it requires changes to the Java command line. Specifically you need to add

       --add-opens java.base/java.net=ALL-UNNAMED

       In the future the BiglyBT launcher will be updated to do this.

Vendors

https://www.oracle.com/java/

https://openjdk.java.net/

https://adoptopenjdk.net/index.html

https://www.openlogic.com/openjdk-downloads

https://www.azul.com/downloads/zulu-community/?package=jdk

64 -vs- 32 bit JVMs

Oracle has stopped shipping a 32-bit version of Java, the last one was 1.8.

Other vendors still offer 32-bit versions, for example AdoptOpenJDK.

SWT

BiglyBT uses the SWT graphics library from Eclipse.

The last 32-bit release of SWT was in 2018, version 4.9 (4919). Therefore, if you decide to run a 32-bit version of BiglyBT you will be limited to a rather out-of-date graphics library that will, over time, have more and more issues. It is also an issue for the BiglyBT developers to continually have to ensure compatability so, sometime not so far far away, BiglyBT support for 32-bit will end.

Download BiglyBT

Clone this wiki locally