Re: [isabelle] Isabelle2016-RC2 Java exceptions related to search/replace



On Fri, 29 Jan 2016, Eugene W. Stark wrote:

Since I started using Isabelle/JEdit (under Ubuntu), I have had issues with the Search/Replace dialog. One that occurs very frequently is the "Window must not be zero" exception. I just downloaded Isabelle2016-RC2 and since it has happened now nearly immediately with that, I am reporting it. The stack trace is shown below. I don't have a deterministic way to repeat it -- it just happens often while doing search and replace, perhaps associated with the "No more matches found, continue from the beginning" dialog.

Yes, looking at the corresponding Java sources of jEdit, it is indeed the "keepsearching" dialog. But I don't think that jEdit is at fault.


java.lang.IllegalArgumentException: Window must not be zero
	at sun.awt.X11.WindowPropertyGetter.<init>(WindowPropertyGetter.java:56)

Browsing through the world wild web, this exception occurs frequently in trackers of Java/AWT/Swing projects like Netbeans, without any solution. They usually say "wontfix" and point fingers back to Oracle.

It might be indeed one of these standard X11 window manager problems. The Isabelle2016-RC2 Installation page specifies this intentionally as follows: "Proper Window manager / Desktop environment that works with Java/AWT/Swing".


You could try your luck openjdk-7 or openjdk-8 from the Ubuntu repository. The resulting main directory is something like /usr/lib/jvm/java-7-openjdk-amd64

It needs to be put in two places:

  (1) $ISABELLE_HOME_USER/etc/settings:

    ISABELLE_JDK_HOME="/usr/lib/jvm/java-7-openjdk-amd64"

  (2) $ISABELLE_HOME/Isabelle2016-RC2.run near the end:

    exec "/usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java" \
      ...


For this Isabelle release, there is still a choice between Java 7 and 8 (I think). We need to bundle Java 8 by default, since Oracle no longer provides updates to its Java 7 distribution. It is unclear to me, which one is worse or better.


	Makarius





This archive was generated by a fusion of Pipermail (Mailman edition) and MHonArc.