如何在启动Spring启动应用程序后自动启动浏览器。是否有任何侦听器方法回调来检查webapp是否已经部署并准备好提供请求,以便在浏览器加载时,用户可以看到索引页并开始与webapp交互?
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
// launch browser on localhost
}
您可以通过一些java代码来实现。我不确定Spring靴是否有现成的东西。
import java.awt.Desktop;
import java.io.IOException;
import java.net.URI;
import java.net.URISyntaxException;
public class Browser {
public static void main(String[] args) {
String url = "http://www.google.com";
if(Desktop.isDesktopSupported()){
Desktop desktop = Desktop.getDesktop();
try {
desktop.browse(new URI(url));
} catch (IOException | URISyntaxException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}else{
Runtime runtime = Runtime.getRuntime();
try {
runtime.exec("xdg-open " + url);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
@SpringBootApplication
@ComponentScan(basePackageClasses = com.io.controller.HelloController.class)
public class HectorApplication {
public static void main(String[] args) throws IOException {
SpringApplication.run(HectorApplication.class, args);
openHomePage();
}
private static void openHomePage() throws IOException {
Runtime rt = Runtime.getRuntime();
rt.exec("rundll32 url.dll,FileProtocolHandler " + "http://localhost:8080");
}
}
下面的代码为我工作:
@EventListener({ApplicationReadyEvent.class})
void applicationReadyEvent() {
System.out.println("Application started ... launching browser now");
browse("www.google.com");
}
public static void browse(String url) {
if(Desktop.isDesktopSupported()){
Desktop desktop = Desktop.getDesktop();
try {
desktop.browse(new URI(url));
} catch (IOException | URISyntaxException e) {
e.printStackTrace();
}
}else{
Runtime runtime = Runtime.getRuntime();
try {
runtime.exec("rundll32 url.dll,FileProtocolHandler " + url);
} catch (IOException e) {
e.printStackTrace();
}
}
}
我刚刚将Spring Boot webapp从在Tomcat中的外部war部署切换到使用Spring Boot(及其内部Tomcat)的直接jar部署。 对于Tomcat运行/调试配置,Intellij为您提供在启动后打开浏览器并转到http://localhost:8080/。 如何使用Spring Boot运行/调试配置来执行类似的操作。它运行main类,直到我自己从浏览器转到localhos
我有一个docker撰写与3服务:配置服务器,cpo事件和cpo执行者。我希望只有当配置服务器准备就绪时才启动服务,因为服务需要配置服务器服务中的配置文件。 docker-compose.yml: 依赖于、链接、healthcheck,没有任何东西可以保证这两个服务(cpo executor、cpo event)仅在配置服务器就绪后启动。
问题内容: 抱歉,您有愚蠢的问题,但是如何在webdriver中启动Chrome浏览器?我知道我必须指定chromedriver.exe的路径。问题是我无法下载chromedriver.exe,它已被删除。我发现的文件也没有.exe扩展名。我正在使用Eclipse,Java。请帮忙!我按照建议的步骤进行了所有操作,但是没有用。这是我的代码: 这是错误: 失败:测试java.lang.Illegal
问题内容: 我已经使用docker安装了Jenkins,尽管我已经跳过了手动设置。当我构建映像并运行它时(仍然有很多事情要做),我需要在浏览器中键入IP和端口以打开Jenkins仪表板。 我的问题是,我可以在运行该映像的泊坞窗中使用脚本自动执行构建的Jenkins应该在浏览器中打开的工作吗? 任何需要运行的命令,请对其进行注释 我试图通过命令打开浏览器,但最终出现错误。任何人都可以使用我的自动化工
我已经开始学习Selenium WebDriver。我注意到的问题,如给定的网址不采取后火狐浏览器推出。请帮忙解决问题 WebDriver版本:2.53 Firefox:48.0 我看到下面的错误 组织。openqa。硒。火狐。NotConnectedException:45000毫秒后无法连接到端口7055上的主机127.0.0.1。Firefox控制台输出:,“syncGUID”:“0Sec7
我正在使用最新的selenium-webdriver(2.47.1)和watir-webdriver(0.8.0),并将Edge WebDriver安装在Ruby/bin文件夹中,就像其他WebDriver.exe文件一样;比如chromedriver或IEDriver。它似乎启动了Edge浏览器,但在关闭浏览器并失败所有测试之前,它不会试图转到URL。Windows中的防火墙允许它,当我运行rs