Re: jde-flymake slow
Hi, On June 27, 2004 02:05 am, Ding Lei wrote: hi, under jde-flymake mode, every newline causes 2-4 seconds delay, even Eclipse is much faster!! Hmm, that is interesting, I use it on SuSE 8.2, AMD Athlon 2000 with out of the box setting and it definitely does not have 2-4 second delay .. I think I did byte-compile flymake and jde-flymake (do not have my dev-box now to confirm). You may want to try byte compile. Even with jde-flymake, emacs still feels faster than Eclipse 3 for me ... Milan Is there anyway to optimize? I don't think it should be that slow on a P4 2.4g, 512M ram machine. Thank you.
Re: flymake / jde-flymake problem
Nascif, Thanks for your detail answer. This is on is Linux SuSE 8.1 Emacs v. 21.2.1 ... I enabled debug-on-error, please see results and comments on you notes inline: On June 16, 2004 10:23 pm, Nascif Abousalh-Neto wrote: Hi Milan, I searched for this error message in both flymake.el and jde-flymake.el and I was not able to find it. i have looked in the message window and this the message seems from jde .. which seems weird as i never saw it in any other situation except trying any flymake command (even mode): # On flymake-mode, i get: Debugger entered--Lisp error: (file-error Opening directory not a directory /home/mzimmermann/projects/eclipse3workspace/airliftj/src/airliftj/util/entityModelUMLToXML/UMLEntities2Hibernate.java) directory-files(/home/mzimmermann/projects/eclipse3workspace/airliftj/src/airliftj/util/entityModelUMLToXML/UMLEntities2Hibernate.java) jde-find-project-file(/home/mzimmermann/projects/eclipse3workspace/airliftj/src/airliftj/util/entityModelUMLToXML/UMLEntities2Hibernate.java) flymake-jde-jikes-java-init(#buffer UMLEntities2Hibernate.java) flymake-start-syntax-check(#buffer UMLEntities2Hibernate.java) flymake-start-syntax-check-for-current-buffer() flymake-mode-on() flymake-mode() * call-interactively(flymake-mode) execute-extended-command(nil) call-interactively(execute-extended-command) In Message window: Loading /home/mzimmermann/projects/eclipse3workspace/airliftj/prj.el (source)...done [2 times] jde-find-project-file: Opening directory: not a directory, /home/mzimmermann/projects/eclipse3workspace/airliftj/src/airliftj/util/entityModelUMLToXML/UMLEntities2Hibernate.java # On flymake-start-syntax-check-for-current-buffer i get: Debugger entered--Lisp error: (file-error Opening directory not a directory /home/mzimmermann/projects/eclipse3workspace/airliftj/src/airliftj/util/entityModelUMLToXML/UMLEntities2Hibernate.java) directory-files(/home/mzimmermann/projects/eclipse3workspace/airliftj/src/airliftj/util/entityModelUMLToXML/UMLEntities2Hibernate.java) jde-find-project-file(/home/mzimmermann/projects/eclipse3workspace/airliftj/src/airliftj/util/entityModelUMLToXML/UMLEntities2Hibernate.java) flymake-jde-jikes-java-init(#buffer UMLEntities2Hibernate.java) flymake-start-syntax-check(#buffer UMLEntities2Hibernate.java) flymake-start-syntax-check-for-current-buffer() * call-interactively(flymake-start-syntax-check-for-current-buffer) execute-extended-command(nil) call-interactively(execute-extended-command) recursive-edit() byte-code(Æ !Ç È !\n? I wonder if it was not a problem during configuration, given that it is quite complex. In order to narrow down the possibilities, I would suggest the following: 1) enable debug-on-error to get a full trace; ok thanks 2) make sure you are using the correct version of flymake - not the official one (0.2) but the one from CVS: http://cvs.sourceforge.net/viewcvs.py/flymake/flymake/ yes, i use the CVS version ... 3) double check the customization i believe i have items 1-5 correct (did not do the highlighting customization) there is only one variable to customize, is that correct? I am attacthing my prj.el - not that I would want you to spend time debugging my setup but just in case ... Thanks again, Milan(jde-project-file-version 1.0) (jde-set-variables '(jde-jdk-registry (quote ((1.4 . /opt/my-opt/jdk1.4) (1.5 . /opt/my-opt/jdk1.5 '(jde-global-classpath (quote (/opt/my-opt/jdk1.4/jre/lib/rt.jar /opt/my-opt/jdk1.4/lib/tools.jar ./classes ./lib ./lib/jaxb/lib ./lib/jaxp/lib ./lib/hibernate/lib ./lib/hsql/lib ./lib/struts/lib ./lib/jaxp/lib/endorsed))) '(jde-debugger (quote (JDEbug))) '(jde-sourcepath (quote (/opt/my-opt/jdk1.4/src.jar ./src))) '(jde-run-working-directory ./classes) '(jde-sourcepath (quote (/opt/my-opt/jdk1.4/src.jar ./src))) '(jde-compile-option-directory /home/mzimmermann/projects/eclipse3workspace/airliftj/classes) )
Re: flymake / jde-flymake problem
Nascif, The modified version works just beautifully! ECB+JDE+jde-flymake .. great environment, thanks! (I have been using JDE a long time ago but recently only IDEA at work and Eclipse at home, but Eclipse, at least on Linux, is so slow now that it became unbearable. I am gonna try your PMD plugin in the next few days as well, but still have lots to learn on JDE setup + project building.) Thanks again, Milan On June 17, 2004 02:44 pm, Nascif Abousalh-Neto wrote: Hey Milan, I think I got a bug - something that shouldn't be working but probably did because of my environment. Give it a try and see if this version works for you. /Nascif -Original Message- From: Milan Zimmermann [mailto:[EMAIL PROTECTED] Sent: Thursday, June 17, 2004 1:57 AM To: Nascif Abousalh-Neto; [EMAIL PROTECTED] Subject: Re: flymake / jde-flymake problem Nascif, Thanks for your detail answer. This is on is Linux SuSE 8.1 Emacs v. 21.2.1 ... I enabled debug-on-error, please see results and comments on you notes inline: On June 16, 2004 10:23 pm, Nascif Abousalh-Neto wrote: Hi Milan, I searched for this error message in both flymake.el and jde-flymake.el and I was not able to find it. i have looked in the message window and this the message seems from jde .. which seems weird as i never saw it in any other situation except trying any flymake command (even mode): # On flymake-mode, i get: Debugger entered--Lisp error: (file-error Opening directory not a directory /home/mzimmermann/projects/eclipse3workspace/airliftj/src/airliftj/util/en tityModelUMLToXML/UMLEntities2Hibernate.java) directory-files(/home/mzimmermann/projects/eclipse3workspace/airliftj/src/ airliftj/util/entityModelUMLToXML/UMLEntities2Hibernate.java) jde-find-project-file(/home/mzimmermann/projects/eclipse3workspace/airlift j/src/airliftj/util/entityModelUMLToXML/UMLEntities2Hibernate.java) flymake-jde-jikes-java-init(#buffer UMLEntities2Hibernate.java) flymake-start-syntax-check(#buffer UMLEntities2Hibernate.java) flymake-start-syntax-check-for-current-buffer() flymake-mode-on() flymake-mode() * call-interactively(flymake-mode) execute-extended-command(nil) call-interactively(execute-extended-command) In Message window: Loading /home/mzimmermann/projects/eclipse3workspace/airliftj/prj.el (source)...done [2 times] jde-find-project-file: Opening directory: not a directory, /home/mzimmermann/projects/eclipse3workspace/airliftj/src/airliftj/util/ent ityModelUMLToXML/UMLEntities2Hibernate.java # On flymake-start-syntax-check-for-current-buffer i get: Debugger entered--Lisp error: (file-error Opening directory not a directory /home/mzimmermann/projects/eclipse3workspace/airliftj/src/airliftj/util/en tityModelUMLToXML/UMLEntities2Hibernate.java) directory-files(/home/mzimmermann/projects/eclipse3workspace/airliftj/src/ airliftj/util/entityModelUMLToXML/UMLEntities2Hibernate.java) jde-find-project-file(/home/mzimmermann/projects/eclipse3workspace/airlift j/src/airliftj/util/entityModelUMLToXML/UMLEntities2Hibernate.java) flymake-jde-jikes-java-init(#buffer UMLEntities2Hibernate.java) flymake-start-syntax-check(#buffer UMLEntities2Hibernate.java) flymake-start-syntax-check-for-current-buffer() * call-interactively(flymake-start-syntax-check-for-current-buffer) execute-extended-command(nil) call-interactively(execute-extended-command) recursive-edit() byte-code( ! !\n? I wonder if it was not a problem during configuration, given that it is quite complex. In order to narrow down the possibilities, I would suggest the following: 1) enable debug-on-error to get a full trace; ok thanks 2) make sure you are using the correct version of flymake - not the official one (0.2) but the one from CVS: http://cvs.sourceforge.net/viewcvs.py/flymake/flymake/ yes, i use the CVS version ... 3) double check the customization i believe i have items 1-5 correct (did not do the highlighting customization) there is only one variable to customize, is that correct? I am attacthing my prj.el - not that I would want you to spend time debugging my setup but just in case ... Thanks again, Milan
flymake / jde-flymake problem
Hello, I am wondering if anyone using flymake and jde-flymake here. I installed both following the instaructions in jde-flymake customized variables etc, but when I try to M-x flymake-mode on java file (e.g. MyClass.java) I get a message: Opening directoty: Not a directory, path-to-my-class/MyClass.java I am getting the same message trying to use other flymake commands (such as flymake-start-syntax-check-for-current-buffer. Anyone has an idea what could be wrong? Thanks Milan
Re: Why the JDEE?
Paul, For what it's worth, I absolutely agree with you on the need for debugging support. I still follow the JDEE mailing list but I had to drop JDEE for Eclipse almost a year ago because of the lack of debugging support ... I can live with it on a small project, but on a large project (esp. when using Swing) JDEE really needs better means of debugging. Having said that, thanks for bringing JDEE to the world and it's continued enhancement. Milan On February 21, 2003 03:30 pm, Paul Kinnucan wrote: Dear JDEE Users, A number of recent threads have alluded to the need for the JDEE to keep pace, featurewise, with the competition, e.g., Eclipse and JBuilder. I'd like to present my perspective on this issue as the JDEE's lead developer and maintainer. It is hopeless for the JDEE to try to compete feature-for-feature with dedicated Java IDE's, especially commercial IDE's. The reason is that the pure Java IDEs do not face the difficult skills and architectural constraints than the JDEE development team faces, e.g., JDEE development requires both Emacs Lisp and Java skills and is constrained to standard I/O for interprocess communications. Why then bother with the JDEE? Because it allows Emacs users to use Emacs to develop Java code. Put another way, the reason for choosing the JDEE will always be Emacs and not the other way around. The JDEE allows Emacs users to make the transition to Java development without having to learn another environment. It also allows users who are, like myself, working in a multilanguage environment (e.g., C/C++/Java) to use a single environment for all their work. Where then should the JDEE development team focus its efforts. The focus should be on those features that best ensure that a decision to use Emacs for Java development does not entail a loss of productivity compared to what other environments afford. In my view, the JDEE's greatest deficiency in this regard is in debugging support. Therefore, it is my intention to focus my efforts personally in this area with the goal of providing the JDEE ASAP, not with the best debugger available, but at least one that does the basics well and reliably. Until then, other features that have been mentioned recently, such as a plugin architecture and syntax errors on the fly, will move forward only in so far as others work on them. Regards, Paul
Re: Why the JDEE?
I agree, although I personally don't really care for #4. I would add that displaying variables on a large object tree may be extremely slow if data are being sent between emacs and java. Milan On February 21, 2003 03:41 pm, Chitale, Sandip V wrote: I agree with you. In terms of features in debugger I would like to see - 1. fast update to different views 2. better variables view (I would like to suggest Java based GUI for this i.e. a treetable) 3. storing and managing breakpoints 4. breakpoint grouping 4. Different kinds of breakpoints i. conditional breakpoints ii. actions when the breakpoints are hit iii. method entry breakpoint (JPDA allows this) iv. method exit breakpoint a. normal exit b. abnormal exit (exception) c. ability to see return value on the stack (even if it was not stored in some local variable). I am not sure if JDPA allows this. v. Class loading breakpoint Just my wish list. -sandip -Original Message- From: Paul Kinnucan [mailto:[EMAIL PROTECTED] Sent: Friday, February 21, 2003 12:30 PM To: [EMAIL PROTECTED] Subject: Why the JDEE? Dear JDEE Users, A number of recent threads have alluded to the need for the JDEE to keep pace, featurewise, with the competition, e.g., Eclipse and JBuilder. I'd like to present my perspective on this issue as the JDEE's lead developer and maintainer. It is hopeless for the JDEE to try to compete feature-for-feature with dedicated Java IDE's, especially commercial IDE's. The reason is that the pure Java IDEs do not face the difficult skills and architectural constraints than the JDEE development team faces, e.g., JDEE development requires both Emacs Lisp and Java skills and is constrained to standard I/O for interprocess communications. Why then bother with the JDEE? Because it allows Emacs users to use Emacs to develop Java code. Put another way, the reason for choosing the JDEE will always be Emacs and not the other way around. The JDEE allows Emacs users to make the transition to Java development without having to learn another environment. It also allows users who are, like myself, working in a multilanguage environment (e.g., C/C++/Java) to use a single environment for all their work. Where then should the JDEE development team focus its efforts. The focus should be on those features that best ensure that a decision to use Emacs for Java development does not entail a loss of productivity compared to what other environments afford. In my view, the JDEE's greatest deficiency in this regard is in debugging support. Therefore, it is my intention to focus my efforts personally in this area with the goal of providing the JDEE ASAP, not with the best debugger available, but at least one that does the basics well and reliably. Until then, other features that have been mentioned recently, such as a plugin architecture and syntax errors on the fly, will move forward only in so far as others work on them. Regards, Paul
Re: Problem with code completion in 2.2.9. Bug report attached.
Paul, thanks for your reply below and appologies for my late response, I have been rebuilding my server over the weekend and was without internet for a few days. snip Hi Milan, There are some puzzling discrepencies in your bug report that lead me to believe that your setup is at fault. For one, the variable jde-jdk, which the JDEE uses to find the vm used to start the beanshell, should be set to one of the jdk designators specified by jde-jdk-registry but it is set to something else. A customization buffer would not allow you to set jde-jdk to an illegitimate value. I think the error report only attaches .emacs from $HOME, and I am loading another shared .emacs from there. I should have manually attached it. In any case, I believe I did not do any manual changes outside custom (as far as I remember) befor I sent the bug report. Yesterday, I deleted all the customization from my .emacs and rebuild it using 2.2.9 using Custom. That fixed the problem. Your suggestion helped me realize I either messed up manually or something (jde variable name?) became out of date. Thanks for your help, Milan The fact that it is means that someone in your environment is setting it programmatically, a bad thing, because it leads to errors that the customization buffer protects you from. Also the JDEE does not use a keyboard macro to trigger the completion facility. Perhaps you have provided one and perhaps it has become out of date because of changes in the names of the completion commands. Anyway, it's hard to tell because the .emacs file that you provide does not define any keyboard macros. So the keyboard macro must be defined somewhere else in a file that you have not provided. - Paul Thanks, Milan To: [EMAIL PROTECTED] Subject: --text follows this line-- Please enter the details of your bug report here Emacs : GNU Emacs 21.1.1 (i386-suse-linux, X toolkit, Xaw3d scroll bars) of 2002-03-25 on stephens Package: JDE version 2.2.9 Required packages: semantic-1.4 eieio-0.17 speedbar-0.14beta4 current state: == (setq jde-gen-session-bean-template '((jde-import-insert-imports-into-buffer (list \javax.ejb.*\ \java.rmi.RemoteException\)) ' (jde-wiz-update-implements-clause \SessionBean\) ' (jde-gen-method-signature \public\ \void\ \ejbActivate\ nil \RemoteException\ ) ' (if jde-gen-kr () 'n) \{\''n \}\''n 'n (jde-gen-method-signature \public\ \void\ \ejbPassivate\ nil \RemoteException\ ) ' (if jde-gen-kr () 'n) \{\''n \}\''n 'n (jde-gen-method-signature \public\ \void\ \ejbRemove\ nil \RemoteException\ ) ' (if jde-gen-kr () 'n) \{\''n \}\''n 'n (jde-gen-method-signature \public\ \void\ \setSessionContext\ \SessionContext ctx\ \RemoteException\ ) ' (if jde-gen-kr () 'n) \{\''n \}\''n 'n (jde-gen-method-signature \public\ \void\ \unsetSessionContext\ nil \RemoteException\ ) ' (if jde-gen-kr () 'n) \{\''n \}\''n 'n ') jde-gen-beep '((end-of-line) ' \Toolkit.getDefaultToolkit().beep();\''n') jde-complete-signature-display '(Eldoc) jde-project-name default jde-which-method-format '([ jde-which-method-current ]) jde-run-classic-mode-vm nil jde-complete-unique-method-names nil jde-find-granularity '(Character) jde-which-method-max-length 20 jde-javadoc-gen-nodeprecatedlist nil jde-package-search-classpath-variables '(jde-compile-option-classpath jde-global-classpath) jde-imenu-include-classdef t jde-javadoc-gen-link-online nil jde-complete-display-result-type t jde-gen-code-templates '((Get Set Pair . jde-gen-get-set) (toString method . jde-gen-to-string-method) (Action Listener . jde-gen-action-listener) (Window Listener . jde-gen-window-listener) (Mouse Listener . jde-gen-mouse-listener) (Mouse Motion Listener . jde-gen-mouse-motion-listener) (Inner Class . jde-gen-inner-class) (println . jde-gen-println) (beep . jde-gen-beep) (property change support . jde-gen-property-change-support) (EJB Entity Bean . jde-gen-entity-bean) (EJB Session Bean . jde-gen-session-bean)) jde-gen-cflow-else '((if (jde-parse-comment-or-quoted-p) '(l \else\) '(l ' \else\ (if jde-gen-kr jde-gen-conditional-padding-3''n) \{\''n''r'n \}\ (if jde-gen-comments'(l \ // end of else\)) ''n') )) jde-jdk-registry '((1.3.1 . /usr/lib/java) (1.4.1 . /usr/local/j2sdk1.4.1-blackdown-beta)) jde-javadoc-gen-destination-directory JavaDoc jde-mode-line-format '(- mode-line-mule-info mode-line-modified mode-line-frame-identification mode-line-buffer-identification global-mode-string%[( mode-name mode-line-process minor-mode-alist %n )%]-- (line-number-mode L%l--) (column-number-mode C%c--) (-3 . %p) (jde-which-method-mode (-- jde-which-method-format --)) -%-) jde-mode-abbreviations '((ab . abstract)
Problem with code completion in 2.2.9. Bug report attached.
Hello, I upgraded to 2.2.9 (from beta 10 i believe). I installed the latest eieio, speedbar and semantic. After the upgrade, the code completion no longer works for me. Immediately after hitting the complete key, I get a beep and see in the minibuffer: After 0 kbd macro iterations: Wrong type argument: Stringp, nil It seems to be bsh related, i tried to run M-x bsh-test and get the same message. I tried earlier versions of eieio, speedbar and semantic as well, but no change. The JDE Bug report attached: Thanks, Milan To: [EMAIL PROTECTED] Subject: --text follows this line-- Please enter the details of your bug report here Emacs : GNU Emacs 21.1.1 (i386-suse-linux, X toolkit, Xaw3d scroll bars) of 2002-03-25 on stephens Package: JDE version 2.2.9 Required packages: semantic-1.4 eieio-0.17 speedbar-0.14beta4 current state: == (setq jde-gen-session-bean-template '((jde-import-insert-imports-into-buffer(list \javax.ejb.*\ \java.rmi.RemoteException\)) ' (jde-wiz-update-implements-clause \SessionBean\) ' (jde-gen-method-signature \public\ \void\ \ejbActivate\ nil \RemoteException\ ) ' (if jde-gen-kr () 'n) \{\''n \}\''n 'n (jde-gen-method-signature \public\ \void\ \ejbPassivate\ nil \RemoteException\ ) ' (if jde-gen-kr () 'n) \{\''n \}\''n 'n (jde-gen-method-signature \public\ \void\ \ejbRemove\ nil \RemoteException\ ) ' (if jde-gen-kr () 'n) \{\''n \}\''n 'n (jde-gen-method-signature \public\ \void\ \setSessionContext\ \SessionContext ctx\ \RemoteException\ ) ' (if jde-gen-kr () 'n) \{\''n \}\''n 'n (jde-gen-method-signature \public\ \void\ \unsetSessionContext\ nil \RemoteException\ ) ' (if jde-gen-kr () 'n) \{\''n \}\''n 'n ') jde-gen-beep '((end-of-line) ' \Toolkit.getDefaultToolkit().beep();\''n') jde-complete-signature-display '(Eldoc) jde-project-name default jde-which-method-format '([ jde-which-method-current ]) jde-run-classic-mode-vm nil jde-complete-unique-method-names nil jde-find-granularity '(Character) jde-which-method-max-length 20 jde-javadoc-gen-nodeprecatedlist nil jde-package-search-classpath-variables '(jde-compile-option-classpath jde-global-classpath) jde-imenu-include-classdef t jde-javadoc-gen-link-online nil jde-complete-display-result-type t jde-gen-code-templates '((Get Set Pair . jde-gen-get-set) (toString method . jde-gen-to-string-method) (Action Listener . jde-gen-action-listener) (Window Listener . jde-gen-window-listener) (Mouse Listener . jde-gen-mouse-listener) (Mouse Motion Listener . jde-gen-mouse-motion-listener) (Inner Class . jde-gen-inner-class) (println . jde-gen-println) (beep . jde-gen-beep) (property change support . jde-gen-property-change-support) (EJB Entity Bean . jde-gen-entity-bean) (EJB Session Bean . jde-gen-session-bean)) jde-gen-cflow-else '((if (jde-parse-comment-or-quoted-p) '(l \else\) '(l ' \else\ (if jde-gen-kr jde-gen-conditional-padding-3''n) \{\''n''r'n \}\ (if jde-gen-comments'(l \ // end of else\)) ''n') )) jde-jdk-registry '((1.3.1 . /usr/lib/java) (1.4.1 . /usr/local/j2sdk1.4.1-blackdown-beta)) jde-javadoc-gen-destination-directory JavaDoc jde-mode-line-format '(- mode-line-mule-info mode-line-modified mode-line-frame-identification mode-line-buffer-identification global-mode-string%[( mode-name mode-line-process minor-mode-alist %n )%]-- (line-number-mode L%l--) (column-number-mode C%c--) (-3 . %p) (jde-which-method-mode (-- jde-which-method-format --)) -%-) jde-mode-abbreviations '((ab . abstract) (bo . boolean) (br . break) (by . byte) (byv . byvalue) (cas . cast) (ca . catch) (ch . char) (cl . class) (co . const) (con . continue) (de . default) (dou . double) (el . else) (ex . extends) (fa . false) (fi . final) (fin . finally) (fl . float) (fo . for) (fu . future) (ge . generic) (go . goto) (impl . implements) (impo . import) (ins . instanceof) (in . int) (inte . interface) (lo . long) (na . native) (ne . new) (nu . null) (pa . package) (pri . private) (pro . protected) (pu . public) (re . return) (sh . short) (st . static) (su . super) (sw . switch) (sy . synchronized) (th . this) (thr . throw) (throw . throws) (tra . transient) (tr . true) (vo . void) (vol . volatile) (wh . while)) jde-imenu-enable t jde-compile-option-verbose nil jde-check-version-flag t
Re: JDEbug hangs trying to debug GUI (swing) application
Hi, I realize this is not of much help but i was never able to JDEbug an Application that uses swing. The debugger part of JDE worked for me (somewhat) only for non GUI apps. Milan On October 7, 2002 03:07 am, Serguei Khomiouk wrote: Hello, I am using emacs for WinNT during last year both for editing and debugging java codes without any problems. Times passed, and now I switched from server to frontnend side. I have faced with the greate problem: JDEbug just hangs trying to stop at breakpoint in GUI java application. My investigations of the problem shows that JDEbug resolves breakpoints and breaks without any problems if these breakpoints are placed before initilising GUI part, but then it just hangs. I have tried to connect to debug the application remotely but the result was the same. I am using emacs-21.2 with jde-2.2.8, jdk1.3.1_04 and don't want to replace emacs with anything else, but this debugging problem... that's my headache during the last week. ANY opinions, ideas and tips? Thanks in advance, Serguei.
Re: Debugging in JDE-2.2.9beta9 - no luck using jdb
I tried to debug in beta9 using the jdb, which should be (I understand) the better option now, however had no luck. I am probably missing something: when I want to use JDE--jdb to debug Tomcat, I do not know how to start Tomcat - under jpda? under jdb? I tried both, with variing options, for instance: JPDA_OPTS=-Xdebug -Xrunjdwp:transport=dt_shmem,address=javadebug,server=y,suspend=n etc... On the client, after JDE--Jdb--ExternalProcess--AttachTo using the default variables I get: cd m:/java/jakarta/tomcat/webapps/airlift/WEB-INF/classes c:/apps/java/jdk-latest/bin/jdb.exe -attach javadebug java.io.IOException: shmemBase_attach failed, error code = -1 at com.sun.tools.jdi.SharedMemoryTransport.attach0(Native Method) at com.sun.tools.jdi.SharedMemoryTransport.attach(SharedMemoryTransport. java:46) at com.sun.tools.jdi.SharedMemoryAttachingConnector.attach(SharedMemoryA ttachingConnector.java:46) at com.sun.tools.example.debug.tty.VMConnection.attachTarget(VMConnectio n.java:289) at com.sun.tools.example.debug.tty.VMConnection.open(VMConnection.java:1 36) at com.sun.tools.example.debug.tty.Env.init(Env.java:68) at com.sun.tools.example.debug.tty.TTY.main(TTY.java:923) Fatal error: Unable to attach to target VM. Error accessing shared memory, rc = -1 Comint finished What am I doing wrong? Attaching the bug report as well, Thanks, Milan On March 13, 2002 12:32 pm, you wrote: Milan Zimmermann writes: Paul, Thanks for your help (and JDE in the first place...), I am going to upgrade to beta9 tonight. It's great that we can attach and listen with jdb - the debugged process (servlet engine) needs to run under jdb(rather than jpda mode of java) then be attached to from JDE in jdb mode, is that correct? (Again, I should try to find any new docs first) The doc is pretty skimpy at this point. The jdb interface works only for the JDK 1.3 or later version of jdb, which is JPDA-based, like JDEbug. See the ReleaseNotes for information on the customization variables and commands relating to attaching and listening. - Paul To: [EMAIL PROTECTED] Subject: --text follows this line-- Please enter the details of your bug report here Emacs : GNU Emacs 21.1.1 (i386-msvc-nt5.0.2195) of 2001-10-22 on buffy Package: JDE version 2.2.9beta9.1 Required packages: semantic-1.4beta13 eieio-0.17beta3 speedbar-0.14beta2 current state: == (setq jde-gen-session-bean-template '((jde-import-insert-imports-into-buffer(list \javax.ejb.*\ \java.rmi.RemoteException\)) ' (jde-wiz-update-implements-clause \SessionBean\) ' (jde-gen-method-signature \public\ \void\ \ejbActivate\ nil \RemoteException\ ) ' (if jde-gen-kr () 'n) \{\''n \}\''n 'n (jde-gen-method-signature \public\ \void\ \ejbPassivate\ nil \RemoteException\ ) ' (if jde-gen-kr () 'n) \{\''n \}\''n 'n (jde-gen-method-signature \public\ \void\ \ejbRemove\ nil \RemoteException\ ) ' (if jde-gen-kr () 'n) \{\''n \}\''n 'n (jde-gen-method-signature \public\ \void\ \setSessionContext\ \SessionContext ctx\ \RemoteException\ ) ' (if jde-gen-kr () 'n) \{\''n \}\''n 'n (jde-gen-method-signature \public\ \void\ \unsetSessionContext\ nil \RemoteException\ ) ' (if jde-gen-kr () 'n) \{\''n \}\''n 'n ') jde-gen-beep '((end-of-line) ' \Toolkit.getDefaultToolkit().beep();\''n') jde-complete-signature-display '(Eldoc) jde-project-name default jde-which-method-format '([ jde-which-method-current ]) jde-run-classic-mode-vm nil jde-complete-unique-method-names nil jde-find-granularity '(Character) jde-which-method-max-length 20 jde-javadoc-gen-nodeprecatedlist nil jde-package-search-classpath-variables '(jde-compile-option-classpath jde-global-classpath) jde-imenu-include-classdef t jde-javadoc-gen-link-online nil jde-gen-code-templates '((Get Set Pair . jde-gen-get-set) (toString method . jde-gen-to-string-method) (Action Listener . jde-gen-action-listener) (Window Listener . jde-gen-window-listener) (Mouse Listener . jde-gen-mouse-listener) (Mouse Motion Listener . jde-gen-mouse-motion-listener) (Inner Class . jde-gen-inner-class) (println . jde-gen-println) (beep . jde-gen-beep) (property change support . jde-gen-property-change-support
Re: debugger seems to hang
Paul, thanks for describing (and working on) the upcomming debug features, they will be very useful to have, looking forward to the next beta, milan On December 30, 2001 10:32 am, you wrote: Milan Zimmermann writes: Jürgen Jatzkowski writes: Hi, ... Paul Kinnucan writes: No. However, you should be aware that JDEbug is of alpha quality. It has not received much attention over the last two years because JDE users seemed more interested in other things like Ant support, hierarchical projects, and field and method completion. I am now starting to devote most of my time to debugger support so the situation should improve. My first priority is to provide solid support for jdb because jdb is a more mature, though less capable, debugger. I then plan to work on JDEbug. I was wondering what % of people here use jdb vs JDEBug (not that I would want my personal preference to JDEBug to affect your priorities). JDEBug, even with some the quirks, was the main reason I started using JDE as a full-circle development environment, apart from using emacs to edit Java files. I am glad the debugging environment will improve. Are there some features of your near-future jdb changes that will affect JDEBug immediately as well? (I am guessing auto-save of break point could be The near term improvements will be * jdb menu always appears on source buffer * breakpoint requests are highlighted in source buffer * breakpoint manager--a dialog buffer that displays all breakpoints with checkboxes for deleting and saving them selectively * debug toolbar--this will use the native GUI toolbar on versions of Emacs that support it and a separate window with button widgets on versions of Emacs that don't support a native toolbar * value of local variable at point is automatically displayed in tooltip on Emacsen that support tooltips or minibuffer (emulates a tool tip). * elimination of any dependency on gud (this dependency was crippling further development of the jdb interface) * replacing gud with the JDE's own object-oriented generalized debugger interface. This will allow both jdb and JDEbug to have a common user interface and inherit common functionality such as breakpoint management and tooltip display of variables The next beta release (few days off) will contain some of this additional functionality and I hope to release additional features at a more rapid pace as I have completed the object-oriented infrastructure required to make it happen. - Paul
Re: debugger seems to hang
Jürgen Jatzkowski writes: Hi, ... Paul Kinnucan writes: No. However, you should be aware that JDEbug is of alpha quality. It has not received much attention over the last two years because JDE users seemed more interested in other things like Ant support, hierarchical projects, and field and method completion. I am now starting to devote most of my time to debugger support so the situation should improve. My first priority is to provide solid support for jdb because jdb is a more mature, though less capable, debugger. I then plan to work on JDEbug. I was wondering what % of people here use jdb vs JDEBug (not that I would want my personal preference to JDEBug to affect your priorities). JDEBug, even with some the quirks, was the main reason I started using JDE as a full-circle development environment, apart from using emacs to edit Java files. I am glad the debugging environment will improve. Are there some features of your near-future jdb changes that will affect JDEBug immediately as well? (I am guessing auto-save of break point could be one, but that's just a guess) Thanks, Milan What this means is that I probably won't fix JDEbugs immediately. Of course, others can feel free to pitch in and help with JDEbug if they have the time and inclination. Oops: I'm using Blackdown's JDK 1.3.1 on Mandrake 8.1 (glibc 2.2) - Paul
Re: Provisional Breakpoints
Javier, On December 10, 2001 08:23 am, you wrote: I think this is good, but I am not sure at what point the debug point is confirmed. A breakpoint is confirmed after the class get loaded. Thanks I use JDE mainly to debug servlets and store breakpoints in the prj file. When I open a java file with stored breakpoints, the breakpoints show yellow. However, when I attach to a running Tomcat, unless I reconfirm the breakpoint manually (by setting it again on the alreay highlighted lines) the debugger does not stop there. I guess the debuger server needs to be told told manually about those breakpoints. Two things would be great to have: I fixed this bug last week. Even though the breakpoint were saved, and they were marked on the source code, no one was telling the debugger about them :(. thus it never stop on them. Thanks - is this going to be in next beta? 1. Store the breakpoints automatically, so they persist across emacs exiting. What about having an option that allows you to save them? I am thinking on the lines of having a widget form with all the saved breadpoints that allows you to manage them. Breakpoints bp1[keep] bp2[skip] [ok] [cancel] Optional keep breakpoint sounds good. I think that saving all breakpoint by a menu item or something fast and easy like that would be worth having. Milan Javier
Re: Provisional Breakpoints
On December 10, 2001 04:05 am, you wrote: Milan Zimmermann [EMAIL PROTECTED] writes: Paul, ... snip ... Yes... I think that just keeping the variables around won't work. 1. Store the breakpoints automatically, so they persist across emacs exiting. I believe this is a known bug. I guess it is a feature at this point - user has to save the breakpoints manually through customize, but it would be good to have JDE save the breakpoints autmatically. I believe a few weeks ago Paul wrote it's on his list as well - hope I am not misquoting. ... snip... Kevin
Re: Provisional Breakpoints
Paul, I think this is good, but I am not sure at what point the debug point is confirmed. I use JDE mainly to debug servlets and store breakpoints in the prj file. When I open a java file with stored breakpoints, the breakpoints show yellow. However, when I attach to a running Tomcat, unless I reconfirm the breakpoint manually (by setting it again on the alreay highlighted lines) the debugger does not stop there. I guess the debuger server needs to be told told manually about those breakpoints. Two things would be great to have: 1. Store the breakpoints automatically, so they persist across emacs exiting. 2. When I attach the debugger to the debug server on a host, all the currently set breakpoints would be automatically set (confirmed?) (again, I guess the debug server would need to be told automatically about the breakpoints) Thanks, Milan On December 9, 2001 11:28 pm, you wrote: Hi All, One of the issues regarding the jdb and JDEbug set breakpoint commands is that they really don't set breakpoints. They request them. The JDE allows you to set (i.e., request) a breakpoint when the debugger is not running. Both JDEbug and jdb allow you to set (request) a breakpoint when a class is not loaded and thus when there is no way for the debugger to know if the breakpoint is valid. In this case, the debugger defers setting the breakpoint until the class loads. Currently the JDE's breakpoint highlight does not allow you to distinguish between a provisional breakpoint, i.e., one that has been requested but not confirmed, and one that is actually set. The breakpoint is marked with a yellow highlight in either case. This can be confusing. So I'm thinking of using two colors to highlight lines where breakpoints are set. A yellow highlight would indicate that the breakpoint has been requested but not confirmed. A red highlight would indicate a confirmed breakpoint. Please let me know if you find any problems with this approach or have a better idea. Regards, Paul
Re: JDEbug is not in the emacs menus
Same problem for me. The only way I can fix it is to do the following: - open A.java (whatever) - force Beanshell to start by compiling A.java - close A.java - open A.java == JDeBug is in the menu now Any ideas why this is hapenning? Thanks, Milan On December 2, 2001 01:35 am, you wrote: Hello to al. OS: linux emacs 20.7.1 jde: 2.2.9.beta7 jdk 1.3.1 Upon a launch of emacs on some java source file i do not see in the menus the JDEbug menu, yet '(jde-debugger (quote (JDEbug))) is specified in ~/.emacs file The menu reappears if I reset the jde-debugger variable in its customization buffer. Probably it is not the wanted behavior. Regards. slava p.s. upgrading jdee from 2.2.8 to 2.2.9beta learned in a hard way how it is importarnt to keep working .emacs for every release, or at least to comment out all JDE custom set variables to try a new jdee version.
JdeBug - Help- local variables do not expand in 2.2.9 beta6 (etc)
After upgrading from 2.2.7 to 2.2.9 beta6, I had multiple problems, some of them I was able to work around, but three (at least) I do not know what to do about. 1. I have the customization variable set that allows to show Local Variables on each step. I can see the Local variables buffer with all the variables, but when I try to expand them by keyboard-entering + on the [+] I get a message: Text is Read Only - Attempt to change text outide editable field For instance, it happens when typing + to expand this in the Local Variables buffer [+] -- this 2. The fact that JdeBug often does not show in the menu (looks almost random, there is ways to fix but none works 100% for me). This has been discussed here, I thought I have a workaround, but it does not always work (for instance when openning a second, third etc java file where I want to put a breakpoint to. 3. In JdeBug, even though I have my breakpoints set by line numbers, when attaching remotely, the breakpoint do show yellow, but JdeBug does not stop on them - only after reasserting the brekpoints manually. Appreciate any input/help Thanks, Milan
Re: JdeBug - Help- local variables do not expand in 2.2.9 beta6 (etc)
On December 2, 2001 07:09 pm, you wrote: 1. I have the customization variable set that allows to show Local Variables on each step. I can see the Local variables buffer with all the variables, but when I try to expand them by keyboard-entering + on the [+] I get a message: Text is Read Only - Attempt to change text outide editable field Javier, thanks for your reply. Please see notes inline: For instance, it happens when typing + to expand this in the Local Variables buffer It is a read-only buffer, to expand it using the keyboard hit enter when the cursor is in the first braket i.e [ ^ or use the middle button on the mouse. The keyboard operation gives the same result (read only buffer) no matter where on the line I am ([+]). However, I did not realize I can use the mouse, that works - Thanks (still somewhat curious about the keyboard operation disabled, but mouse is fine) 2. The fact that JdeBug often does not show in the menu (looks almost random, there is ways to fix but none works 100% for me). This has been discussed here, I thought I have a workaround, but it does not always work (for instance when openning a second, third etc java file where I want to put a breakpoint to. If anyone could find a way to reproduce this, that would be really useful. Thanks for looking into this. To duplicate (at least here), when I double-click on A.java in explorer, it used to open with JDeBug in the menu, now it does not. As well, opening a second java file from dired almost always fails to show JdeBug in the menu ... 3. In JdeBug, even though I have my breakpoints set by line numbers, when attaching remotely, the breakpoint do show yellow, but JdeBug does not stop on them - only after reasserting the brekpoints manually. I would look into this. Thanks, Milan Javier
compile after upgrade to 2.2.9 beta5 - wrong type argument: object-p, nil
Hello, I tried to upgrade to 2.2.9 beta5 (from 2.2.7), (upgraded all related packages, speedbar, eieio, semantic). Everything seems to work, other than when I do Jde--Compile (or C-C C-v C-c) I get a message wrong type argument: object-p, nil I have not changed or customized anything after the upgrade. Is there anything obvious I am doing wrong or do I need to change something to fix the compile? Thanks, Milan The BugReport is attached To: [EMAIL PROTECTED] Subject: --text follows this line-- Please enter the details of your bug report here Emacs : GNU Emacs 20.7.1 (i386-*-nt5.0.2195) of Tue Jun 13 2000 on buffy Package: JDE version 2.2.9beta5 current state: == (setq jde-gen-session-bean-template '((jde-import-insert-imports-into-buffer(list \javax.ejb.*\ \java.rmi.RemoteException\)) ' (jde-wiz-update-implements-clause \SessionBean\) ' (jde-gen-method-signature \public\ \void\ \ejbActivate\ nil \RemoteException\ ) ' (if jde-gen-kr () 'n) \{\''n \}\''n 'n (jde-gen-method-signature \public\ \void\ \ejbPassivate\ nil \RemoteException\ ) ' (if jde-gen-kr () 'n) \{\''n \}\''n 'n (jde-gen-method-signature \public\ \void\ \ejbRemove\ nil \RemoteException\ ) ' (if jde-gen-kr () 'n) \{\''n \}\''n 'n (jde-gen-method-signature \public\ \void\ \setSessionContext\ \SessionContext ctx\ \RemoteException\ ) ' (if jde-gen-kr () 'n) \{\''n \}\''n 'n (jde-gen-method-signature \public\ \void\ \unsetSessionContext\ nil \RemoteException\ ) ' (if jde-gen-kr () 'n) \{\''n \}\''n 'n ') jde-gen-beep '((end-of-line) ' \Toolkit.getDefaultToolkit().beep();\''n') jde-complete-signature-display '(Eldoc) jde-project-name default jde-which-method-format '([ jde-which-method-current ]) jde-run-classic-mode-vm nil jde-complete-unique-method-names nil jde-javadoc-gen-nodeprecatedlist nil jde-which-method-max-length 20 jde-package-search-classpath-variables '(jde-compile-option-classpath jde-global-classpath) jde-imenu-include-classdef t jde-javadoc-gen-link-online nil jde-gen-code-templates '((Get Set Pair . jde-gen-get-set) (toString method . jde-gen-to-string-method) (Action Listener . jde-gen-action-listener) (Window Listener . jde-gen-window-listener) (Mouse Listener . jde-gen-mouse-listener) (Mouse Motion Listener . jde-gen-mouse-motion-listener) (Inner Class . jde-gen-inner-class) (println . jde-gen-println) (beep . jde-gen-beep) (property change support . jde-gen-property-change-support) (EJB Entity Bean . jde-gen-entity-bean) (EJB Session Bean . jde-gen-session-bean)) jde-gen-cflow-else '((if (jde-parse-comment-or-quoted-p) '(l \else\) '(l ' \else\ (if jde-gen-kr jde-gen-conditional-padding-3''n) \{\''n''r'n \}\ (if jde-gen-comments'(l \ // end of else\)) ''n') )) jde-make-args -f d:/stealth/src/Makefile all jde-jdk-registry nil jde-javadoc-gen-destination-directory JavaDoc jde-mode-line-format '(- mode-line-mule-info mode-line-modified mode-line-frame-identification mode-line-buffer-identification global-mode-string %[( mode-name mode-line-process minor-mode-alist %n )%]-- (line-number-mode L%l--) (column-number-mode C%c--) (-3 . %p) (jde-which-method-mode (-- jde-which-method-format --)) -%-) jde-mode-abbreviations '((ab . abstract) (bo . boolean) (br . break) (by . byte) (byv . byvalue) (cas . cast) (ca . catch) (ch . char) (cl . class) (co . const) (con . continue) (de . default) (dou . double) (el . else) (ex . extends) (fa . false) (fi . final) (fin . finally) (fl . float) (fo . for) (fu . future) (ge . generic) (go . goto) (impl . implements) (impo . import) (ins . instanceof) (in . int) (inte . interface) (lo . long) (na . native) (ne . new) (nu . null) (pa . package) (pri . private) (pro . protected) (pu . public) (re . return) (sh . short) (st . static) (su . super) (sw . switch) (sy . synchronized) (th . this) (thr . throw) (throw . throws) (tra .