title: How can I fix this? JavaFX - Wrong JPEG library version: library is 80, caller expects 70
body: <p>I get this error whenever I try to create an Image in JavaFX. Absolutely no images are loading, but everything else on the UI is. The only time I see this is when <code>prism.verbose=true</code></p>
  
  <p>Other answers to similiar questions here on StackOverflow suggest reinstalling libjpeg. But when I do <code>sudo apt-get remove libjpeg8</code>, it tries to remove 4 GB worth of packages that seem pretty dang important.</p>
  
  <p>Has anyone else experienced this and found a feasible solution that isn't going to require me to reinstall my entire OS?</p>
  
  <p>Here is the entire stacktrace:</p>
  
  <pre><code>java.io.IOException: Wrong JPEG library version: library is 80, caller expects 70
  at com.sun.javafx.iio.jpeg.JPEGImageLoader.initDecompressor(Native Method)
  at com.sun.javafx.iio.jpeg.JPEGImageLoader.&lt;init&gt;(JPEGImageLoader.java:187)
  at com.sun.javafx.iio.jpeg.JPEGImageLoaderFactory.createImageLoader(JPEGImageLoaderFactory.java:49)
  at com.sun.javafx.iio.ImageStorage.getLoaderBySignature(ImageStorage.java:419)
  at com.sun.javafx.iio.ImageStorage.loadAll(ImageStorage.java:266)
  at com.sun.javafx.tk.quantum.PrismImageLoader2.loadAll(PrismImageLoader2.java:142)
  at com.sun.javafx.tk.quantum.PrismImageLoader2.&lt;init&gt;(PrismImageLoader2.java:77)
  at com.sun.javafx.tk.quantum.PrismImageLoader2$AsyncImageLoader.processStream(PrismImageLoader2.java:252)
  at com.sun.javafx.tk.quantum.PrismImageLoader2$AsyncImageLoader.processStream(PrismImageLoader2.java:225)
  at com.sun.javafx.runtime.async.AbstractRemoteResource.call(AbstractRemoteResource.java:109)
  at com.sun.javafx.tk.quantum.PrismImageLoader2$AsyncImageLoader.access$201(PrismImageLoader2.java:225)
  at com.sun.javafx.tk.quantum.PrismImageLoader2$AsyncImageLoader.lambda$call$428(PrismImageLoader2.java:259)
  at java.security.AccessController.doPrivileged(Native Method)
  at com.sun.javafx.tk.quantum.PrismImageLoader2$AsyncImageLoader.call(PrismImageLoader2.java:258)
  at com.sun.javafx.tk.quantum.PrismImageLoader2$AsyncImageLoader.call(PrismImageLoader2.java:225)
  at com.sun.javafx.runtime.async.AbstractAsyncOperation.lambda$new$272(AbstractAsyncOperation.java:57)
  at java.util.concurrent.FutureTask.run(FutureTask.java:266)
  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
  at java.lang.Thread.run(Thread.java:745)
  </code></pre>
  
  <p>And this is my version info for java. I'm using the Oracle version.</p>
  
  <pre><code>java version "1.8.0_72"
  Java(TM) SE Runtime Environment (build 1.8.0_72-b15)
  Java HotSpot(TM) 64-Bit Server VM (build 25.72-b15, mixed mode)
  </code></pre>
  
  <p><strong>EDIT:</strong></p>
  
  <p>I ran <code>strace</code> on my app and it looks like something is searching specifically for libjpeg 8 only. It's not ever trying to look for any default libjpeg library or libjpeg 7 at all.</p>