我是一个带有主类的Spring Boot应用程序:
@Path("...")
public class SomeRestService {
@Resource(name="java:jboss/datasources/my_db")
private DataSource ds;
@GET
@Produces(MediaType.APPLICATION_JSON)
public MyPojo someResource() {
try(Connection con = ds.getConnection()) {
...
}
}
}
使用@SpringBootApplication
public class MyApplication extends SpringBootServletInitializer{
public static void main(String[] args) {
SpringApplication.run(MyApplication .class, args);
}
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application){
return application.sources(applicationClass);
}
private static Class<MyApplication > applicationClass = MyApplication .class;
}
:
gradle.build
当我尝试在WebSphere Application Server 9.0 Traditional上部署war文件时,它会启动但需要很长时间。没有war文件,服务器启动和停止非常正常,但是对于应用程序,服务器挂起。
我错过了什么吗?
谢谢你的帮助!!
答案 0 :(得分:0)
启动延迟可能是由CDI的隐式bean归档扫描引起的。如果您不使用CDI,则可以使用com.ibm.ws.cdi.enableImplicitBeanArchives=false
禁用隐式Bean归档。
您可以在本技术说明中找到更详细的解释:
Custom Properties for improving application startup in WebSphere Application Server