#1690 JythonInterpreter plugin fails after jEdit restart

closed-invalid
nobody
None
5
2013-02-18
2013-01-23
bobalex
No

JythonInterpreter plugin works OK just after installing, but after the next jEdit shutdown/restart, it never works again. The relevant error message is

1:08:20 PM [AWT-EventQueue-0] [error] BeanShellAction: java.lang.NoSuchFieldError: version

when trying "Check jython version" menu choice, and a different field for "About". For "Jython Interpreter" it hangs.

100% reproducable with jEdit 5.0, Java 7u11, on both Windows 7 64 bit and Windows Vista 32 bit. Haven't tried other jEdit versions or other OSs.

Discussion

  • Wizzzard
    Wizzzard
    2013-02-15

    I cannot verify this. Works for me.

    Windows 7 64 bit, jEdit 5.0.0, java 7u13, JythonInterpreter 1.0.1 (SVN-Snapshot).

    What do you see, when you start jEdit on the console?

    Were are the plugins installed, in the application directory or the directory for the user preferences? When they are in the application directory, are they readable by a normal Windows User?

    Do you have a TextBuffer with a jython script active, when you start jedit? When then Sidekick is active too, then there is a deadlock when you open the JythonInterpreter before SideKick is ready with parsing.

     
  • bobalex
    bobalex
    2013-02-18

    Details of producing error

     
    Attachments
  • bobalex
    bobalex
    2013-02-18

    Thanks for looking into this!

    I started from scratch with JythonInterpreter not installed, and was still
    able to reproduce the problem. Recall that right after installing, everything
    seems to work properly. After closing down jEdit and restarting, the plugin
    fails and never works again until a fresh install of the plugin.

    See attached file bug_notes.txt for details.

     
  • bobalex
    bobalex
    2013-02-18

    Oops -- I didn't answer your questions!

    My plugins are installed in the application directory, not user. I suppose they are readable by a normal user. I always run as an administrator-type user, and in general have no problem accessing any of the files in my jedit application directory.

    I don't have any TextBuffers with a jython script active. My main planned use for this plugin is to write jEdit macros in Jython.

    By "start jEdit on the console", do you mean the shell (er, command prompt)? After starting via the jedit command in the shell, I see no more console output at all while running. The only log-type output I have found is the jEdit activity log. I included a bunch of that log output in the attached file.

     
  • bobalex
    bobalex
    2013-02-18

    I FOUND THE PROBLEM, and it's my fault!

    I have a startup script that loads a bunch additional JAR files, and it turns out that among those is a later version of jython.jar. Apparent when the plugin is installed, jedit's classpath is re-adjusted to search jEdit's jar directory first, but on restart my startup script's added JAR files are searched first. Apparently later versions of Jython have a different scripting API.

    It bothered me that you could not reproduce the problem so I dug deeper into my own environment, and thus found my error.

    Sorry for the false alarm!

     
  • bobalex
    bobalex
    2013-02-18

    • status: open --> closed-invalid