Fix JAVA_HOME on osx for gradle invocations

Bug: 230005411
Change-Id: I80564694295b608bae9ae4ecc7d9b0ce4a5d3648
diff --git a/tools/gradle.py b/tools/gradle.py
index 19fa773..92503a7 100755
--- a/tools/gradle.py
+++ b/tools/gradle.py
@@ -59,10 +59,10 @@
     GRADLE, GRADLE_TGZ, GRADLE_SHA1, 'Gradle binary')
 
 def EnsureJdk():
-  jdkHome = jdk.GetJdkHome()
-  jdkTgz = jdkHome + '.tar.gz'
+  jdkRoot = jdk.GetJdkRoot()
+  jdkTgz = jdkRoot + '.tar.gz'
   jdkSha1 = jdkTgz + '.sha1'
-  utils.EnsureDepFromGoogleCloudStorage(jdkHome, jdkTgz, jdkSha1, 'JDK')
+  utils.EnsureDepFromGoogleCloudStorage(jdkRoot, jdkTgz, jdkSha1, 'JDK')
 
 def EnsureDeps():
   EnsureGradle()
diff --git a/tools/jdk.py b/tools/jdk.py
index c9cb628..5cf1465 100755
--- a/tools/jdk.py
+++ b/tools/jdk.py
@@ -13,7 +13,10 @@
 def GetJdkHome():
   return GetJdk11Home()
 
-def GetJdk11Home():
+def GetJdkRoot():
+  return GetJdk11Root()
+
+def GetJdk11Root():
   root = os.path.join(JDK_DIR, 'jdk-11')
   if defines.IsLinux():
     return os.path.join(root, 'linux')
@@ -24,6 +27,14 @@
   else:
     return os.environ['JAVA_HOME']
 
+def GetJdk11Home():
+  root = GetJdk11Root()
+  # osx has the home inside Contents/Home in the bundle
+  if defines.IsOsX():
+    return os.path.join(root,'Contents', 'Home')
+  else:
+    return root
+
 def GetJdk9Home():
   root = os.path.join(JDK_DIR, 'openjdk-9.0.4')
   if defines.IsLinux():