diff -Naur jde-2.3.5-orig/lisp/jde.el jde-2.3.5/lisp/jde.el
--- jde-2.3.5-orig/lisp/jde.el	2005-10-05 09:15:21.000000000 -0400
+++ jde-2.3.5/lisp/jde.el	2005-10-05 09:27:56.000000000 -0400
@@ -373,7 +373,11 @@
           (progpath 
 	   (expand-file-name 
 	    (concat
-	     (if (eq system-type 'darwin) "Home/bin/" "bin/")
+	     ; Support legacy (<= 10.1?) OS X, modern OS X, and plain darwin.
+             (if (and (eq system-type 'darwin)
+                      (string-match "/System/Library" (jde-get-jdk-dir) 0)
+                      (not (string-match "Home" (jde-get-jdk-dir) 0)))
+                 "Home/bin/" "bin/")
 	     full-progname)
 	    (jde-get-jdk-dir))))
      (if (file-exists-p progpath)
@@ -386,7 +390,10 @@
 error if it cannot find the jar."
   (let ((tools 
          (expand-file-name 
-          (if (eq system-type 'darwin)
+          ; Support legacy (<= 10.1?) OS X, modern OS X, and plain darwin.
+	  (if (and (eq system-type 'darwin)
+                   (string-match "/System/Library" (jde-get-jdk-dir) 0)
+                   (not (string-match "Home" (jde-get-jdk-dir) 0)))
               "Classes/classes.jar"
             "lib/tools.jar")
           (jde-get-jdk-dir))))
