Java 使用tomcat 7 jdk1.8启动Spring引导应用程序失败

Java 使用tomcat 7 jdk1.8启动Spring引导应用程序失败,java,spring-boot,jakarta-ee,tomcat7,Java,Spring Boot,Jakarta Ee,Tomcat7,我试图在Tomcat7服务器上部署Spring引导应用程序并启动它。 启动时,我有:org.apache.catalina.startup.catalina]服务器在11954毫秒内启动 但我遇到以下问题,部署失败: Unable to process Jar entry [META-INF/versions/9/module-info.class] from Jar [jar:file:tomcat/7_0_61-ep-01/webapps/app-oss/WEB-INF/lib/byte

我试图在Tomcat7服务器上部署Spring引导应用程序并启动它。 启动时,我有:org.apache.catalina.startup.catalina]服务器在11954毫秒内启动

但我遇到以下问题,部署失败:

  Unable to process Jar entry [META-INF/versions/9/module-info.class] from Jar [jar:file:tomcat/7_0_61-ep-01/webapps/app-oss/WEB-INF/lib/byte-buddy-1.9.12.jar!/] for annotations
    org.apache.tomcat.util.bcel.classfile.ClassFormatException: Invalid byte tag in constant pool: 19
        at org.apache.tomcat.util.bcel.classfile.Constant.readConstant(Constant.java:97)
        at org.apache.tomcat.util.bcel.classfile.ConstantPool.<init>(ConstantPool.java:55)
        at org.apache.tomcat.util.bcel.classfile.ClassParser.readConstantPool(ClassParser.java:177)
        at org.apache.tomcat.util.bcel.classfile.ClassParser.parse(ClassParser.java:85)
        at org.apache.catalina.startup.ContextConfig.processAnnotationsStream(ContextConfig.java:2089)
        at org.apache.catalina.startup.ContextConfig.processAnnotationsJar(ContextConfig.java:1965)
        at org.apache.catalina.startup.ContextConfig.processAnnotationsUrl(ContextConfig.java:1931)
        at org.apache.catalina.startup.ContextConfig.processAnnotations(ContextConfig.java:1916)
        at org.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1330)
        at org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:889)
        at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:386)
        at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
        at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)
        at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5416)
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
        at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)
        at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)
        at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:652)
        at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:672)
        at org.apache.catalina.startup.HostConfig$DeployDescriptor.run(HostConfig.java:1882)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:745)

Unable to process Jar entry [module-info.class] from Jar [jar:file:tools/tomcat/7_0_61-ep-01/webapps/app-oss/WEB-INF/lib/jakarta.xml.bind-api-2.3.2.jar!/] for annotations
org.apache.tomcat.util.bcel.classfile.ClassFormatException: Invalid byte tag in constant pool: 19
    at org.apache.tomcat.util.bcel.classfile.Constant.readConstant(Constant.java:97)
    at org.apache.tomcat.util.bcel.classfile.ConstantPool.<init>(ConstantPool.java:55)
    at org.apache.tomcat.util.bcel.classfile.ClassParser.readConstantPool(ClassParser.java:177)     at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:652)
    at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:672)
    at org.apache.catalina.startup.HostConfig$DeployDescriptor.run(HostConfig.java:1882)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)
无法处理Jar[Jar:file:tomcat/7_0_61-ep-01/webapps/app oss/WEB-INF/lib/byte-buddy-1.9.12.Jar!/]中的Jar条目[META-INF/versions/9/module info.class]进行注释
org.apache.tomcat.util.bcel.classfile.ClassFormatException:常量池中的字节标记无效:19
位于org.apache.tomcat.util.bcel.classfile.Constant.readConstant(Constant.java:97)
位于org.apache.tomcat.util.bcel.classfile.ConstantPool.(ConstantPool.java:55)
位于org.apache.tomcat.util.bcel.classfile.ClassParser.readConstantPool(ClassParser.java:177)
位于org.apache.tomcat.util.bcel.classfile.ClassParser.parse(ClassParser.java:85)
位于org.apache.catalina.startup.ContextConfig.processAnnotationStream(ContextConfig.java:2089)
位于org.apache.catalina.startup.ContextConfig.processAnnotationsJar(ContextConfig.java:1965)
位于org.apache.catalina.startup.ContextConfig.processAnnotationsUrl(ContextConfig.java:1931)
位于org.apache.catalina.startup.ContextConfig.processAnnotations(ContextConfig.java:1916)
位于org.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1330)
位于org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:889)
位于org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:386)
位于org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
位于org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)
位于org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5416)
位于org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
位于org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)
位于org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)
位于org.apache.catalina.core.StandardHost.addChild(StandardHost.java:652)
位于org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:672)
位于org.apache.catalina.startup.HostConfig$DeployDescriptor.run(HostConfig.java:1882)
位于java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
在java.util.concurrent.FutureTask.run(FutureTask.java:266)处
位于java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
位于java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
运行(Thread.java:745)
无法从Jar[Jar:file:tools/tomcat/7_0_61-ep-01/webapps/app-oss/WEB-INF/lib/jakarta.xml.bind-api-2.3.2.Jar!/]处理用于注释的Jar条目[module info.class]
org.apache.tomcat.util.bcel.classfile.ClassFormatException:常量池中的字节标记无效:19
位于org.apache.tomcat.util.bcel.classfile.Constant.readConstant(Constant.java:97)
位于org.apache.tomcat.util.bcel.classfile.ConstantPool.(ConstantPool.java:55)
org.apache.catalina.util.bcel.classfile.ClassParser.readConstantPool(ClassParser.java:177)org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
位于org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)
位于org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)
位于org.apache.catalina.core.StandardHost.addChild(StandardHost.java:652)
位于org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:672)
位于org.apache.catalina.startup.HostConfig$DeployDescriptor.run(HostConfig.java:1882)
位于java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
在java.util.concurrent.FutureTask.run(FutureTask.java:266)处
位于java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
位于java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
运行(Thread.java:745)
依赖springboot:
ging>war</packaging>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
            <exclusions>
                <exclusion>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-starter-tomcat</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
            <scope>runtime</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
ing>战争
org.springframework.boot
弹簧靴起动器
org.springframework.boot
弹簧启动机tomcat
org.springframework.boot
SpringBootStarterWeb
org.springframework.boot
弹簧靴开发工具
运行时
org.springframework.boot
弹簧起动试验
测试
我怎样才能修好它?
我编辑了我的帖子,添加了springboot的一部分。。这个包是一个WAR,我排除了tomcat,您的应用程序被打包为一个jar文件。为了将其部署到tomcat,您需要将其打包为war文件并添加tomcat依赖项。您可以在pom.xml中执行以下操作:

<groupId>com.example</groupId>
<artifactId>example</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>
<dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-tomcat</artifactId>
   <scope>provided</scope>
</dependency>
com.example
例子
0.0.1-快照
战争
org.springframework.boot
弹簧启动机tomcat
假如

默认情况下,SpringBoot在打包后生成一个jar文件,并具有一个嵌入式tomcat服务器。要运行它,只需要JRE。如果需要将其部署到tomcat,请遵循上述步骤。

tomcat版本与您在jdk中使用的版本不兼容。 请参阅本文,清楚地显示它

有时候你可以从quora那里得到提示,这是一个maven项目吗??您是否在pom.xml中添加了依赖项?是的,它是一个maven。。我尝试将spring应用程序迁移到spring启动应用程序。。。当我删除SpringBVoot的所有依赖项时,它工作得很好。。但是当我添加springboot时,它不起作用。。我将更新çy post以添加我的pom,似乎jdk和tomcat版本不兼容,请尝试在更高版本的tomcatmayb中部署