Spring boot 弹簧靴似乎没有启动

Spring boot 弹簧靴似乎没有启动,spring-boot,tomcat7,war,external,banner,Spring Boot,Tomcat7,War,External,Banner,我正在尝试将SpringBootWar部署到DailyRazor托管的私有Tomcat7.0.68实例。我不明白为什么Spring启动应用程序不能工作。我似乎没有犯任何错误。在本地,我已经使用STS3.8.4、Tomcat 7.0.78、Tomcat 8.5.11和其他几个版本的Tomcat实现了这一点 我从来没有在DailyRazor实例上看到Spring Boot横幅显示,也没有看到很多其他日志显示我的Spring Boot应用程序正在启动并加载所有bean。这是我看到的唯一日志记录: IN

我正在尝试将SpringBootWar部署到DailyRazor托管的私有Tomcat7.0.68实例。我不明白为什么Spring启动应用程序不能工作。我似乎没有犯任何错误。在本地,我已经使用STS3.8.4、Tomcat 7.0.78、Tomcat 8.5.11和其他几个版本的Tomcat实现了这一点

我从来没有在DailyRazor实例上看到Spring Boot横幅显示,也没有看到很多其他日志显示我的Spring Boot应用程序正在启动并加载所有bean。这是我看到的唯一日志记录:

INFO main org.apache.catalina.core.StandardService - Stopping service Catalina
INFO main org.apache.catalina.core.AprLifecycleListener - The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/local/tomcat/users/user_id/jdk/jre/lib/amd64/server:/usr/local/tomcat/users/user_id/jdk/jre/lib/amd64:/usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib
INFO main org.apache.catalina.startup.Catalina - Initialization processed in 2299 ms
INFO main org.apache.catalina.core.StandardService - Starting service Catalina
INFO main org.apache.catalina.core.StandardEngine - Starting Servlet Engine: Apache Tomcat/7.0.68
INFO foobar.com-startStop-1 org.apache.catalina.startup.TldConfig - At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.
INFO foobar.com-startStop-1 org.apache.catalina.util.SessionIdGeneratorBase - Creation of SecureRandom instance for session ID generation using [SHA1PRNG] took [271] milliseconds.
INFO foobar.com-startStop-1 org.apache.catalina.startup.HostConfig - Deploying web application archive /home/user_id/tomcat/webapps/foobar.com/ROOT.war
INFO foobar.com-startStop-1 org.apache.catalina.startup.TldConfig - At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.
INFO foobar.com-startStop-1 org.apache.catalina.startup.HostConfig - Deployment of web application archive /home/user_id/tomcat/webapps/foobar.com/ROOT.war has finished in 1,603 ms
INFO foobar.com-startStop-1 org.apache.catalina.startup.HostConfig - Deploying web application archive /home/user_id/tomcat/webapps/foobar.com/plant-service-0.0.1-SNAPSHOT.war
INFO foobar.com-startStop-1 org.apache.catalina.startup.TldConfig - At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.
INFO foobar.com-startStop-1 org.apache.catalina.core.ContainerBase.[Catalina].[foobar.com].[/plant-service-0.0.1-SNAPSHOT] - 3 Spring WebApplicationInitializers detected on classpath
INFO foobar.com-startStop-1 org.apache.catalina.core.ContainerBase.[Catalina].[foobar.com].[/plant-service-0.0.1-SNAPSHOT] - Initializing Spring embedded WebApplicationContext
INFO foobar.com-startStop-1 org.apache.catalina.startup.HostConfig - Deployment of web application archive /home/user_id/tomcat/webapps/foobar.com/plant-service-0.0.1-SNAPSHOT.war has finished in 21,769 ms
INFO main org.apache.catalina.startup.Catalina - Server startup in 26534 ms
INFO ajp-bio-127.0.0.1-9592-exec-1 org.apache.catalina.core.ContainerBase.[Catalina].[foobar.com].[/plant-service-0.0.1-SNAPSHOT] - Initializing Spring FrameworkServlet 'dispatcherServlet'
我遵循了打包为WAR、扩展SpringBootServletilizer、重写configure(…)等说明。同样,这些都可以在多个版本的Tomcat上本地工作。我试图调整日志记录,但没有看到任何有用的内容

有什么提示吗?建议

编辑

不确定它是否相关,但在关闭Tomcat时,我看到以下内容:

INFO main org.apache.catalina.core.StandardService - Stopping service Catalina
ERROR foobar.com-startStop-2 org.apache.catalina.loader.WebappClassLoaderBase - The web application [] appears to have started a thread named [Abandoned connection cleanup thread] but has failed to stop it. This is very likely to create a memory leak.
INFO foobar.com-startStop-2 org.apache.catalina.core.ContainerBase.[Catalina].[foobar.com].[/plant-service-0.0.1-SNAPSHOT] - Destroying Spring FrameworkServlet 'dispatcherServlet'
INFO foobar.com-startStop-2 org.apache.catalina.core.ContainerBase.[Catalina].[foobar.com].[/plant-service-0.0.1-SNAPSHOT] - Closing Spring root WebApplicationContext
ERROR foobar.com-startStop-2 org.apache.catalina.loader.WebappClassLoaderBase - The web application [/plant-service-0.0.1-SNAPSHOT] registered the JDBC driver [com.mysql.jdbc.Driver] but failed to unregister it when the web application was stopped. To prevent a memory leak, the JDBC Driver has been forcibly unregistered.
ERROR foobar.com-startStop-2 org.apache.catalina.loader.WebappClassLoaderBase - The web application [/plant-service-0.0.1-SNAPSHOT] appears to have started a thread named [Abandoned connection cleanup thread] but has failed to stop it. This is very likely to create a memory leak.

您能确保所有这些操作都正确吗?

(Spring引导文档):

创建一个可部署的war文件 生成可部署war文件的第一步是提供
SpringBootServletInitializer
子类并重写其配置 方法。这利用了Spring框架的Servlet3.0支持和 允许您在应用程序由启动时配置应用程序 servlet容器。通常,您会更新应用程序的主类 要扩展SpringBootServletializer:

@SpringBootApplication
public class Application extends SpringBootServletInitializer {

    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
        return application.sources(Application.class);
    }

    public static void main(String[] args) throws Exception {
        SpringApplication.run(Application.class, args);
    }

}
下一步是更新构建配置,以便 project生成war文件而不是jar文件。如果你正在使用 Maven并使用
spring boot starter父级
(配置Maven的 war插件)您只需将
pom.xml
修改为 将包装更改为war:

<packaging>war</packaging>

在我看来一切都很好。@RobertMoskal不,不是。我们应该看到spring引导横幅。我可以确认我正在使用@SpringBootApplication,扩展SpringBootServletializer,并覆盖configure()。我还可以确认我正在POM中使用spring boot starter父级作为父级,并已将打包设置为WAR。此外,我已经设置了7.0.68和1.7以匹配外部Tomcat实例所使用的内容。我无法独立运行WAR,尽管文档中指出我应该:$java-jar target/plant-service-0.0.1-SNAPSHOT.WAR错误:无法找到或加载主类com.foobar.plant.plantserviceapplicationies,我有提供的弹簧靴启动器tomcat。我能够通过java-jar启动战争。。。在org.springframework.boot中回复后,spring boot maven插件在外部Tomcat中仍然没有成功。如何在Tomcat上部署?我通常只通过本地实例上的“cp”或DailyRazor上的外部实例上的“scp”进行热部署。现在,我正在尝试通过Tomcat管理器来最小化问题。就我所知没有区别。
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <!-- ... -->
    <packaging>war</packaging>
    <!-- ... -->
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-tomcat</artifactId>
            <scope>provided</scope>
        </dependency>
        <!-- ... -->
    </dependencies>
</project>