--- old/src/java.desktop/share/classes/java/awt/print/PrinterJob.java 2016-11-07 10:47:26.823786416 -0800 +++ new/src/java.desktop/share/classes/java/awt/print/PrinterJob.java 2016-11-07 10:47:26.695786417 -0800 @@ -79,13 +79,12 @@ public PrinterJob run() { String nm = System.getProperty("java.awt.printerjob", null); try { - return (PrinterJob)Class.forName(nm).newInstance(); + return (PrinterJob)Class.forName(nm). + getConstructor().newInstance(); } catch (ClassNotFoundException e) { throw new AWTError("PrinterJob not found: " + nm); - } catch (InstantiationException e) { + } catch (ReflectiveOperationException e) { throw new AWTError("Could not instantiate PrinterJob: " + nm); - } catch (IllegalAccessException e) { - throw new AWTError("Could not access PrinterJob: " + nm); } } });