Я пытаюсь сохранить снимок экрана холста в файле png, но выдает следующую ошибку.
Java версия: 10
Версия Javafx: 11
Пример кода:
WritableImage writableImage = new WritableImage((int) canvas.getWidth(), (int) canvas.getHeight());
WritableImage snapshot = canvas.snapshot(new SnapshotParameters(), writableImage);
File save = new File("Sample.png");
RenderedImage im = SwingFXUtils.fromFXImage(snapshot, null);
try {
ImageIO.write(im, "png", save);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Но произошло следующее исключение.
Caused by: java.lang.IllegalAccessError: class javafx.embed.swing.SwingFXUtils (in module javafx.swing) cannot access class sun.awt.image.IntegerComponentRaster (in module java.desktop) because module java.desktop does not export sun.awt.image to module javafx.swing
at javafx.swing/javafx.embed.swing.SwingFXUtils.fromFXImage(SwingFXUtils.java:284)
Кто-нибудь может мне помочь?