Java Maven:检查网站是否在部署后运行

Java Maven:检查网站是否在部署后运行,java,maven,tomcat,Java,Maven,Tomcat,我有一个远程Tomcat服务器和配置的maven项目,我可以使用maven Tomcat:redeploy编译和部署它。但是,如果在应用程序启动期间出现一些运行时错误(例如,应用程序无法连接数据库),则尽管部署过程已成功,但它不会启动 我想检查部署的网站是否已启动并使用maven运行(例如,通过检查HTTP 200状态的所需应用程序URL)。如何做到这一点?您的web应用程序必须有一个索引文件,您可以将其放入web.xml文件中的欢迎文件列表中。当您点击应用程序URL时,您将看到该索引页。您可以

我有一个远程Tomcat服务器和配置的maven项目,我可以使用
maven Tomcat:redeploy
编译和部署它。但是,如果在应用程序启动期间出现一些运行时错误(例如,应用程序无法连接数据库),则尽管部署过程已成功,但它不会启动


我想检查部署的网站是否已启动并使用maven运行(例如,通过检查HTTP 200状态的所需应用程序URL)。如何做到这一点?

您的web应用程序必须有一个索引文件,您可以将其放入web.xml文件中的欢迎文件列表中。当您点击应用程序URL时,您将看到该索引页。

您可以使用jUnit+之类的工具从Maven运行这些测试。不确定是否可以在部署后自动运行,因为部署需要一些时间,Maven不知道应用程序何时准备就绪

您可以让Maven使用Cargo运行本地Tomcat服务器,并对其运行那些单元测试。
我知道这些不是真正的单元测试,但您可以使用jUnit来实现这一点…

用于检查应用程序是否正在运行的示例代码

URL url = new URL("http://the.url.of.web.app:1234");
URLConnection urlConn = url.openConnection();
urlConn.connect();
// jump over if-clause for casts
HttpURLConnection httpConnection = (HttpURLConnection) connection;
int code = httpConnection.getResponseCode();
// do check on code; 200 is okay
在执行mvn tomcat:redeploy之后,您可以在特殊概要文件中执行一个