Я выполняю Java-класс для скриншота моего экрана со следующим кодом:
import java.awt.AWTException;
import java.awt.FlowLayout;
import java.awt.GraphicsEnvironment;
import java.awt.Rectangle;
import java.awt.Robot;
import java.awt.Toolkit;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
import javax.swing.JFrame;
import javax.swing.JLabel;
public class FullScreenCapture extends JFrame {
private static final long serialVersionUID = 1L;
public static String capture() {
FullScreenCapture f = new FullScreenCapture();
String Ret;
try {
Thread.sleep(5000);
System.setProperty("java.awt.headless", "true");
Robot robot = new Robot();
String fileName = "D://FullScreenshot.jpg";
Rectangle screenRect = new Rectangle(Toolkit.getDefaultToolkit()
.getScreenSize());
GraphicsEnvironment ge =
GraphicsEnvironment.getLocalGraphicsEnvironment();
System.out.println("Headless mode: " + ge.isHeadless());
BufferedImage screenFullImage = robot.createScreenCapture(screenRect);
ImageIO.write(screenFullImage, "jpg", new File(fileName));
Ret ="Capture Saved Successfully";
} catch (Exception e) {
System.out.println("Exception occurred");
Ret ="Wrong Error";
}
return Ret;
}
}
программа не имеет проблем при выполнении в NetBeans или в CMD,
но при загрузке Java-класса Java в базу данных Oracle
чтобы вызвать его как функцию, верните сообщение об ошибке java.awt.HeadlessException