Skip to content

Setting up Java for Tetrad For Experts

Joseph Ramsey edited this page Mar 29, 2023 · 15 revisions

If you're already an expert at setting up software using wizards or command-line options, myriad options exist for installing Java JDKs with various characteristics. Your group may already be using a particular one, so ask. The only advice you may need is to install version 9 or higher if you want the Tetrad data loader to work. If you don't like the advice below, send us better, succinct advice, and we'll include it on this page!

Some notes:

  • If you're building Tetrad jars for arbitrary people to use, it may help to conform to OpenJDK standards with nothing extra. Microsoft's OpenJDK build enforces this. Their website may be difficult for newbies, but it is easily accessible to those more experienced with installations
  • You may prefer some other build of OpenJDK, such as Redhat's or IBM's, or Oracle's, or Amazon's Corretto, or Eclipse's Temurin
  • If you use brew on a Mac, you may install Java through brew
  • If you use anaconda (conda) on a Mac, you may install Java through anaconda
  • For Windows, Microsoft's, Oracle's and Amazon's are options that we've tested with Tetrad. The installers for them already set all the environment variables for you, so you don't have to worry about it. Still, if you want to refrain from using those installers, there are articles about how to do it online, so google away!
  • If you're installing Java on Linux and don't want to use the options above, you are already in ultra-expert mode, so google for a way to do that for your Linux distro if you don't know how

Many other options are available!

  • For instance, there are high-performance options like GraalVM or Zulu that you may like
  • If you're a Java programmer setting Tetrad up in IntelliJ IDEA, it can download and install various JDKs from a dropdown menu, including many options other than the ones listed here. However, as above, we recommend the Microsoft OpenJDK build if you want to create jars that everyone can use, regardless of which build of OpenJDK they use (9+).