gpt4 book ai didi

docker jenkins 中的 java.awt.HeadlessException

转载 作者:行者123 更新时间:2023-11-30 01:57:29 28 4
gpt4 key购买 nike

当我在我的selenium代码中运行通过docker运行的jenkins时,我收到以下异常。

当我使用机器人类为我的场景之一导入文件时,它就开始了。当我在 Jenkins 中运行代码时,出现以下异常。

异常:
java.awt.HeadlessException:
未设置 X11 DISPLAY 变量,但该程序执行了需要该变量的操作。
在 sun.awt.HeadlessToolkit.getSystemClipboard(HeadlessToolkit.java:309)
在 PageObjectRep.QuickHlr.Click_on_Browser(QuickHlr.java:119)
在stepDefinations.HLR_LookUp.clickOnBrowser(HLR_LookUp.java:70)
在✽。然后点击浏览器(Smoke.feature:178)

注意:Jenkins 在 docker 中运行。感谢您提前提供的帮助。

 Toolkit.getDefaultToolkit().getSystemClipboard().setContents(sel,null);
System.out.println("selection" +sel);
// Wait for 5 seconds
Thread.sleep(5000);
System.out.println("Browse button clicked");
// Create object of Robot class
Robot robot = new Robot();
Thread.sleep(1000);
// Press Enter
robot.keyPress(KeyEvent.VK_ENTER);
// Release Enter
robot.keyRelease(KeyEvent.VK_ENTER);
// Press CTRL+V
robot.keyPress(KeyEvent.VK_CONTROL);
robot.keyPress(KeyEvent.VK_V);
// Release CTRL+V
robot.keyRelease(KeyEvent.VK_CONTROL);
robot.keyRelease(KeyEvent.VK_V);
Thread.sleep(1000);
//Press Enter
robot.keyPress(KeyEvent.VK_ENTER);
robot.keyRelease(KeyEvent.VK_ENTER);
}

最佳答案

快速回答

您无法在没有用户界面的操作系统中运行 GUI(图形用户界面)java 代码,例如服务器,其目标是在后台模式下运行应用程序。例如,您需要一个桌面。

详细答案

您可以将 Java 分为以下几类:

Java SE = 标准版。通常用于具有 JFrame、Robot、Toolkit 等类的 GUI 或桌面应用程序。

java se

此外,还包含许多任何 Java 程序员都应该学习的库和 API(java.lang、java.io、java.math、java.net、java.util 等),并在下一个类别。

要运行此应用程序,需要具有用户界面的操作系统。如果您使用 ubuntu/debian、solaris 等在 tomcat、jenkins、widfly 等服务器中运行此应用程序,则由于缺少只有用户界面操作系统具有的依赖项,某些部分将无法工作。例如,java.awt.Robot可以将鼠标移动到x.y,但在shell服务器中没有鼠标。

Java EE = 企业版。 Java 平台(企业版)用于开发分布式系统,例如数据库访问(JDBC、JPA)、远程方法调用(RMI)、消息传递(JMS)、 Web 服务、XML 处理,并为 Enterprise JavaBean、servlet、portlet、Java Server Pages 等定义标准 API...

jee

目前,这一类别最常用于企业或公司系统开发:Api Rest、集成、安全、微服务等。也用于开发服务器、平台或库,例如:Tomcat、Jenkins、Pentaho、Mule ESB、 Selenium 、Spring 等

Java ME = Micro Edition。这是用于开发移动设备应用程序的平台。我认为由于 Android 和其他工具的原因,现在它已被弃用。

关于docker jenkins 中的 java.awt.HeadlessException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53896161/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com