Adoptable Cookbooks List

Looking for a cookbook to adopt? You can now see a list of cookbooks available for adoption!
List of Adoptable Cookbooks

Supermarket Belongs to the Community

Supermarket belongs to the community. While Chef has the responsibility to keep it running and be stewards of its functionality, what it does and how it works is driven by the community. The chef/supermarket repository will continue to be where development of the Supermarket application takes place. Come be part of shaping the direction of Supermarket by opening issues and pull requests or by joining us on the Chef Mailing List.

Select Badges

Select Supported Platforms

Select Status


java_se (64) Versions 8.60.0

Installs Oracle's Java SE JDK

cookbook 'java_se', '= 8.60.0', :supermarket
cookbook 'java_se', '= 8.60.0'
knife supermarket install java_se
knife supermarket download java_se
Quality 100%

Java SE Cookbook

Cookbook Version
Build Status
GitHub Issues

Installs Oracle's Java SE JDK.

The next scheduled critical patch update:

  • 20 October 2015

How is this different from Java cookbook?

  • Allows for downloads directly from Oracle on all supported platforms
  • Can specify an alternative URI directory to download from
  • Easily lock version to Java release '~> 8.0' or critical patch update '~> 8.60.0'
  • Lightweight, no cookbook dependencies
  • Only supports Oracle's Java SE JDK
  • Does not support RPM installations on Linux

Note that this cookbook does not yet support JCE Unlimited Strength Jurisdiction Policy Files.


  • Chef 11 or higher


  • CentOS, Red Hat, Fedora
  • Debian, Ubuntu
  • Mac OS X
  • Windows


By adding java_se to a run_list or as a dependency you are accepting the
Oracle Binary Code License Agreement for Java SE.

Windows platform requires a reboot for JAVA_HOME and PATH to be set.


  • node['java_se']['uri'] - The URI to the Java SE JDKs. This can be a URI to a local or remote directory or file. If a directory is provided, then it will download the JDK that best matches platform criteria. Note that JDK file names must be the same as that found on Oracle's download page. For local directories or files, use file:// prefix e.g., 'file:///c:/path/to/jdk.exe'. Leave nil to download directly from Oracle. Default is nil.
  • node['java_se']['force_i586'] - Install i586 Java on x64 machine if true. For Linux and Windows only. Default is false.
  • node['java_se']['java_home'] - Alternative java_home location. Leave nil to use default location. For Linux and Windows only. Default is nil.
  • node['java']['set_default'] - Indicates whether or not you want the JDK installed to be default on the system. For Linux only. Defaults to true.
  • node['java']['owner'] - The owner of extracted directory. For Linux only. Default to root.
  • node['java']['group'] - The group of extracted directory. For Linux only. Default to root.
  • node['java']['alternatives_priority'] - A priority of the alternatives. For Linux only. Defaults to 1061.
  • node['java']['set_etc_environment'] - Optionally sets JAVA_HOME in /etc/environment for. For Linux only. Default false.
  • node['java']['reset_alternatives'] - Whether alternatives is reset. For Linux only. Defaults to true.
  • node['java']['use_alt_suffix'] whether '_alt' suffix is used for none default java install. For Linux only. Defaults to false.
  • node['java']['bin_cmds'] - Array of binary commands to symlink /usr/bin to, and set alternative on.
    Examples are mvn, java, javac, etc. These cmds must be in the bin subdirectory of the extracted folder. Will be ignored if set_default is not true. For Linux only.
  • node['java_se']['url'] - Deprecated in favor of uri and will be removed in Java 9 release.
  • node['java_se']['file'] - Deprecated in favor of uri and will be removed in Java 9 release.


Example role to download JDK from alternative location:

name "java_se"
description "Install Java SE"
  "java_se": {
    "uri": ""

This will download the JDK that best matches platform criteria e.g., Windows 64-bit with force_i586 flag set to true
will match
Note that JDK file names must be the same as that found on Oracle's download page.


This cookbook does NOT use SemVer for versioning.

The versioning scheme is RELEASE.UPDATE.MINOR where:

  1. RELEASE is the release of Java e.g. 8
  2. UPDATE is the Java critical patch update e.g. 60
  3. MINOR is the *cookbook release for an enhancement or bugfix e.g. 0

*All cookbook releases will strive to be backwards-compatible.

Getting Help


Please refer to CONTRIBUTING.


MIT - see the accompanying LICENSE file
for details.



  • Update 60


  • Remove unused dmg dependency


  • Support Linux installs


  • Deprecate url and file attributes in favor of uri


  • Support Mac OS X install


  • Initial release

Foodcritic Metric

8.60.0 passed this metric