The following steps cause a java.lang.ExceptionInInitializerError on revision 3456
1.Open an empty database
2.Follow Menu Perferences/
3.Enter "{" to Mark new entry with owner name text box
4.Click OK
5. Add a new entry to the current data base
6. Save
Close JabRef
Next time JabRef won't be able to start and an exception is thrown:
java.io.IOException: Error in field 'owner': Curly braces { and } must be balanced.
at net.sf.jabref.BibtexEntry.writeField(BibtexEntry.java:398)
at net.sf.jabref.BibtexEntry.write(BibtexEntry.java:370)
at net.sf.jabref.export.FileActions.saveDatabase(FileActions.java:235)
at net.sf.jabref.export.SaveDatabaseAction.saveDatabase(SaveDatabaseAction.java:202)
at net.sf.jabref.export.SaveDatabaseAction.run(SaveDatabaseAction.java:158)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at spin.Invocation.evaluate(Invocation.java:175)
at spin.off.SpinOffEvaluator$1.run(SpinOffEvaluator.java:108)
at java.lang.Thread.run(Thread.java:619)
net.sf.jabref.export.SaveException: rt
at net.sf.jabref.export.SaveDatabaseAction.saveDatabase(SaveDatabaseAction.java:232)
at net.sf.jabref.export.SaveDatabaseAction.run(SaveDatabaseAction.java:158)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at spin.Invocation.evaluate(Invocation.java:175)
at spin.off.SpinOffEvaluator$1.run(SpinOffEvaluator.java:108)
at java.lang.Thread.run(Thread.java:619)
Catch and treat the exception properly
I tried to reproduce bug on 2.11-dev but got following error on start:
Last edit: Ingvar Jackal 2014-08-17