Suggestion, compilation errors in jose-1.4.4.

  • tastendruecker

    What is about system-wide installation?
    At the moment jose uses config-subdir in
    workDir in order to save the actual configuration.
    With respect to system-wide installations
    I think that it is better to put the config-Dir
    into the user-directory.

    I tried to compile jose-144-source and got
    the following errors:

    The type org.apache.fop.fonts.TTFMtxEntry is not visible   
    jose/de/jose/util/print    line 40

    The method getGlyphMetrics() is undefined for the type TTFFile    jose/de/jose/util/print    line 219

    TTFMtxEntry cannot be resolved to a type    jose/de/jose/util/print    line 219   

    The import de.jose.devtools cannot be resolved    jose/de/jose/window

    The last error can be eliminated by commenting
    out the corresponded line, but the other error
    seem to be cruical.

    In all tested versions of fop
    (i tried 0.20.5, fop-0.90alpha1, fop-0.91beta)
    the class org.apache.fop.fonts.TTFMtxEntry
    is not public! The method getGlyphMetrics
    is not definded in org.apache.fop.fonts.TTFFile
    (resp. in org.apache.fop.fonts.trutype.TTFFile
    (new fop-Versions)). Which version of fop
    should be used?


    • Peter Schäfer
      Peter Schäfer

      Thanks for the input.

      There actually is a user-specific configuration file. It's located at ~/.jose.user.preferences and contains things like window layouts, colors, etc.

      The configuration files in jose/config contain global settings. One could argue if some of them were better configured at user-level (e.g. engine settings). But most of them are in the right place, I think.

      If you like to use user-specific databases, you can do so by setting the datadir=... switch on the command line, like:
      java -jar jose.jar datadir=~/chess-database

      If you have a one database for all users, don't forget to grant write access to the directory.

      As to the compilation problem: you can compile against lib/fop-plus.jar which is basically FOP 0.20.5 (compiled from sources) plus some classes from Batik.

      (jose needs only very few classes from Batik, that's why I packed them into a new jar file, instead of distributing the huge Batik jar file).