Wednesday, June 11, 2014

Published 6/11/2014 by with 6 comments

Font ' net/sf/jasperreports/fonts/pictonic/pictonic.ttf ...' is not available to the JVM

The full error message is:

Exception in thread "AWT-EventQueue-0" java.lang.ExceptionInInitializerError
       at net.sf.jasperreports.engine.fill.JRBaseFiller.(JRBaseFiller.java:184)
Caused by: net.sf.jasperreports.engine.util.JRFontNotFoundException: Font '
                     net/sf/jasperreports/fonts/pictonic/pictonic.ttf
                     net/sf/jasperreports/fonts/pictonic/pictonic.svg
                     net/sf/jasperreports/fonts/pictonic/pictonic.eot
                     net/sf/jasperreports/fonts/pictonic/pictonic.woff
              ' is not available to the JVM. See the Javadoc for more details.


Obviously there might have several reasons for this error. A Google Search or stackoverflow search will bring many results.

For me, in one instance, the problem was with the jasperreports version as I had more that one jasperreports jar in my classpath.

My reports were compiled with jasperreports-5.6.0 and in my classpath jasperreports-4.1.1.jar was also included and accidentally jasperreports-4.1.1.jar was "up" in the Build class path order.

Actually, my eclipse project had jasperreports-5.6.0 as a library jar and this project had another project as "Required projects in the build path" that contained the old version of jasperreports.

I moved the jasperreports-5.6.0 to "Up in the build classpath order" than the old version, and the problem got resolved.

Again, later I removed the project dependency and got the problem resolved as well.

So check, whether you have more than one jasperreports library  anyhow; if so, remove the unnecessary duplicate jar. 
    email this       edit

6 comments:

  1. i get the same error message but i just have ireport 5.6.0 installed and .jar files in library are from the same version, my project was working fine but i made format on my notebook and when i installed all programs again stop working, so i dont know what happened, i´ve tried putting an ignore tag in the jrxml, i´ve tried putting more .jar in my classpath (for example spring and poi) i have netbeans 8.0 iReport 5.6.0 and win 7

    ReplyDelete
  2. I`ve solved it by changing from iReport 5.6.0 to 5.2.0 and now its working, i really dont know if its some kind of bug or what but... now its working hehe :D

    ReplyDelete
  3. Many thanks for this suggestion. I ran into the same problem and without this post it would have taken me a lot longer to figure out what was going on.

    ReplyDelete
  4. how to set order of jars?

    ReplyDelete
  5. actually , jaspers version jars are in webcontent and cant re-order them, how to order then?

    ReplyDelete
  6. Thank you so much, I had spent 3 hours fighting with this, until I found your post. I had a other version of jasperreports in my lib folder and because of this not was working.

    ReplyDelete