JDEE Afficionados:

I seem to be unable to get JDEE 2.2.8 to startup properly when running Xemacs
21.1.13 on Solaris 8 and am hoping that someone can help to diagnose what I
have done wrong.  While I probably have some sort of a configuration problem,
I can get JDEE running on the same machine with GNU emacs Version 21.1.1. (We
want to be able to have users use JDEE without arguing about whether GNU Emacs
or Xemacs is better ...).  When I fire up xemacs (with the same .emacs file
that works for GNU emacs)
it seems to get far enough to get the "Java" menu item ... but never gets the
JCE, Classes, or Senator menu items added.

xemacs -version results in:
XEmacs 21.1 (patch 13) "Crater Lake" [Lucid] (sparc-sun-solaris2.8) of Wed Feb
21 2001 on solaris
Note: xemacs was installed from the binary from sunfreeware.com.).  I then
used the xemacs package facility to install the following xemacs packages:
cc-mode, debug, edit-utils, efs, eterm, fsf-compat, ispell, mail-lib,
os-utils, ps-print-nomule, xemacs-base, and xemacs-devel. (Note: these
probably aren't all required for xemacs but they are the packages that we had
installed on our Solaris 2.6 machine and, like the other machine, are
installed in the xemacs default of /usr/local/lib/xemacs/xemacs-packages.

The backtrace that I get (without understanding it ...) is:

Signaling: (wrong-number-of-arguments #<subr make-char-table> 2)
  make-char-table(syntax-table nil)
  byte-code("..." [current-load-list jde-run-mode-map
jde-run-mode-syntax-table
    boundp make-sparse-keymap make-char-table syntax-table nil
    jde-run-mode-abbrev-table define-abbrev-table put jde-run-mode
    derived-mode-parent comint-mode] 4)
  load-internal("jde-run" nil t nil nil nil)
  load("jde-run" nil t nil)
  require(jde-run)
  byte-code("..." [current-load-list jde-xemacsp emacs-major-version
    jde-xemacs20p 20 require semantic-load easymenu cl font-lock cc-mode
    cus-edit jde-compile jde-db jde-run jde-make jde-gen compile imenu
speedbar
    browse-url beanshell jde-wiz jde-parse jde-help jde-bug jde-complete
    jde-javadoc jde-javadoc-gen jde-stat jde-which-method jde-java-font-lock
    jde-import jde-package executable nil (byte-code "��!�" [require custom]
    2) ((error)) featurep custom fboundp custom-declare-variable 
    defgroup (macro . #<compiled-function ... "...(2)" ... 1>)
    defface (macro . #<compiled-function ... "...(12)" ... 5>)
    defcustom (macro . #<compiled-function ... "...(6)" ... 4>)
    custom-set-default defalias ...] 8)
  load-internal("jde" nil t nil nil nil)
  load("jde" nil t nil)
  require(jde)
  (if defer-loading-jde (progn (autoload ... "jde" "JDE mode." t) (setq    
auto-mode-alist ...)) (require (quote jde)))
  )
  load-internal("~/.emacs" t t t nil nil)
  load("~/.emacs" t t t)
  load-user-init-file("")
  load-init-file()
  command-line()
  normal-top-level()

My load path is:
`load-path' is a simple built-in variable.

Value: ("/usr/local/share/emacs/site-lisp/idl"
"/usr/local/share/emacs/site-lisp/elib"
"/usr/local/share/emacs/site-lisp/eieio"
"/usr/local/share/emacs/site-lisp/speedbar"
"/usr/local/share/emacs/site-lisp/semantic"
"/usr/local/share/emacs/site-lisp/jde/lisp"
"/usr/local/lib/xemacs/xemacs-packages/lisp/"
"/usr/local/lib/xemacs/xemacs-packages/lisp/cc-mode/"
"/usr/local/lib/xemacs/xemacs-packages/lisp/debug/"
"/usr/local/lib/xemacs/xemacs-packages/lisp/edit-utils/"
"/usr/local/lib/xemacs/xemacs-packages/lisp/efs/"
"/usr/local/lib/xemacs/xemacs-packages/lisp/eterm/"
"/usr/local/lib/xemacs/xemacs-packages/lisp/fsf-compat/"
"/usr/local/lib/xemacs/xemacs-packages/lisp/ispell/"
"/usr/local/lib/xemacs/xemacs-packages/lisp/mail-lib/"
"/usr/local/lib/xemacs/xemacs-packages/lisp/os-utils/"
"/usr/local/lib/xemacs/xemacs-packages/lisp/ps-print-nomule/"
"/usr/local/lib/xemacs/xemacs-packages/lisp/xemacs-base/"
"/usr/local/lib/xemacs/xemacs-packages/lisp/xemacs-devel/"
"/usr/local/lib/xemacs-21.1.13/lisp/"
"/usr/local/lib/xemacs-21.1.13/lisp/mule/"
"/usr/local/lib/xemacs-21.1.13/lisp/term/")

And if I do an "ls -l" of /usr/local/share/emacs/site-lisp (so show exactly
which versions of eieio, speedbar, and friends I have installed) I get:

lrwxrwxrwx   1 root     root          10 Jan 11 15:48 eieio -> eieio-0.16
drwxr-xr-x   3 root     other       1024 Jan 14 08:56 eieio-0.16
lrwxrwxrwx   1 root     root           8 Jan 11 15:48 elib -> elib-1.0
drwxrwxr-x   2 root     other       1024 Jan 14 08:56 elib-1.0
drwxr-xr-x   2 root     root         512 Jan 11 15:50 idl
lrwxrwxrwx   1 root     root           9 Jan 13 10:43 jde -> jde-2.2.8
drwxr-xr-x   5 root     other        512 Jan 13 15:57 jde-2.2.8
lrwxrwxrwx   1 root     root          18 Jan 13 10:43 semantic ->
semantic-1.4beta13
drwxr-xr-x   3 root     other       2048 Jan 14 08:56 semantic-1.4beta13
lrwxrwxrwx   1 root     root          18 Jan 13 18:21 speedbar ->
speedbar-0.14beta2
drwxr-xr-x   2 root     other       1024 Jan 14 08:56 speedbar-0.14beta2
-rw-r--r--   1 root     other        106 Dec  8 23:55 subdirs.el.orig

My full .emacs file is (which, incidentally, has run successullly against JDE
2.2.6 on a Solaris 2.6 machine for over a year) is:

;; This .emacs file illustrates the minimul setup
;; required to run the JDE.

;; Set the debug option to enable a backtrace when a
;; problem occurs.
(setq debug-on-error t)

;; Setup printing stuff ...
(setq lpr-command "lp")
(setq ps-lpr-command "lp")
(setq ps-print-color-p nil)

;; Update the Emacs load-path to include the path to
;; the JDE and its require packages. This code assumes
;; that you have installed the packages in the emacs/site-lisp
;; subdirectory of your home directory.
;; (add-to-list 'load-path "/usr/local/share/emacs/20.7/lisp")
(add-to-list 'load-path "/usr/local/share/emacs/site-lisp/jde/lisp")
(add-to-list 'load-path "/usr/local/share/emacs/site-lisp/semantic")
(add-to-list 'load-path "/usr/local/share/emacs/site-lisp/speedbar")
(add-to-list 'load-path "/usr/local/share/emacs/site-lisp/eieio")
(add-to-list 'load-path "/usr/local/share/emacs/site-lisp/elib")
(add-to-list 'load-path "/usr/local/share/emacs/site-lisp/idl")

;; If you want Emacs to defer loading the JDE until you open a 
;; Java file, edit the following line
(setq defer-loading-jde nil)
;; to read:
;;
;;  (setq defer-loading-jde t)
;;

(if defer-loading-jde
    (progn
      (autoload 'jde-mode "jde" "JDE mode." t)
      (setq auto-mode-alist
            (append
             '(("\\.java\\'" . jde-mode))
             auto-mode-alist)))
  (require 'jde))

(setq auto-mode-alist (cons '("\\.idl\\'" . idl-mode) auto-mode-alist))
(require 'idl-font-lock)

;; Sets the basic indentation for Java source files
;; to two spaces.
(defun my-jde-mode-hook ()
  (setq c-basic-offset 2))

(add-hook 'jde-mode-hook 'my-jde-mode-hook)

;; Include the following only if you want to run
;; bash as your shell.

;; Setup Emacs to run bash as its primary shell.
(setq shell-file-name "bash")
(setq shell-command-switch "-c")
(setq explicit-shell-file-name shell-file-name)
(setenv "SHELL" shell-file-name)
(setq explicit-sh-args '("-login" "-i"))
(if (boundp 'w32-quote-process-args)
  (setq w32-quote-process-args ?\")) ;; Include only for MS Windows.

(custom-set-variables
 '(paren-mode (quote paren) nil (paren)))
(custom-set-faces)

Finally, the "message log" file is:

Loading cus-face...
Loading cus-face...done
Loading customization dependencies...
Loading customization dependencies...done
Loading cl-macs...
Loading cl-macs...done
Bootstrapping objects...
Bootstrapping objects...done
Loading regexp-opt...
Loading regexp-opt...done
Loading debug...
Loading debug...done
Entering debugger...
Loading xpm-button...
Loading xpm-button...done
Loading annotations...
Loading annotations...done

There's probably something stupid that I have done ... but I sure can't see
it.  I HAVE tried to carefully re-read all of the installation stuff and make
sure that I've done it all and in the proper order ....

Thanks for your consideration,

John

Reply via email to