您好,我正在尝试在 tomcat 10 中部署 spring mvc 项目,但出现以下错误。我搜索了很多但没有找到解决方案

Hi I am trying to deploy spring mvc project in tomcat 10 but I am getting following error . I search a lot but not find the solution

我是 运行 使用 tomcat 10 windows 中的 startup.bat 选项的项目。 我没有将我的代码从 javax 修改为 Jakarta 因为如果我修改代码也会更改很多代码也无法找到 Jakarta 的 spring 依赖项。 根据客户要求,我必须在 tomcat10 和 java8.previously 上部署应用程序,我们正在为应用程序使用 tomcat9 和 java8。 根据 tomcat10 说明,如果我们部署一个使用 javax 的应用程序,那么 tomcat10 会自动将 javax 转换为 Jakarta。我通过给出以下 link 来遵循这个过程: https://www.appsdeveloperblog.com/deploy-a-spring-boot-rest-app-as-a-war-to-tomcat-10/

26-Dec-2021 12:02:00.713 SEVERE [main] org.apache.tomcat.jakartaee.Migration.migrateArchiveStreaming Failed to migrate archive [WEB-INF/lib/sbm-java-plugin-1.3-jar-with-dependencies.jar]. Using the "-zipInMemory" option may help.
        java.util.zip.ZipException: duplicate entry: META-INF/LICENSE
                at java.util.zip.ZipOutputStream.putNextEntry(Unknown Source)
                at org.apache.tomcat.jakartaee.Migration.migrateArchiveStreaming(Migration.java:228)
                at org.apache.tomcat.jakartaee.Migration.migrateStream(Migration.java:289)
                at org.apache.tomcat.jakartaee.Migration.migrateArchiveStreaming(Migration.java:229)
                at org.apache.tomcat.jakartaee.Migration.migrateStream(Migration.java:289)
                at org.apache.tomcat.jakartaee.Migration.migrateFile(Migration.java:200)
                at org.apache.tomcat.jakartaee.Migration.execute(Migration.java:166)
                at org.apache.catalina.startup.HostConfig.migrateLegacyApp(HostConfig.java:1298)
                at org.apache.catalina.startup.HostConfig$MigrateApp.run(HostConfig.java:2048)
                at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
                at java.util.concurrent.FutureTask.run(Unknown Source)
                at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
                at java.util.concurrent.AbstractExecutorService.submit(Unknown Source)
                at org.apache.catalina.startup.HostConfig.migrateLegacyApps(HostConfig.java:1260)
                at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:471)
                at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1708)
                at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:320)
                at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:123)
                at org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:423)
                at org.apache.catalina.util.LifecycleBase.setState(LifecycleBase.java:366)
                at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:946)
                at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:886)
                at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
                at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1396)
                at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1386)
                at java.util.concurrent.FutureTask.run(Unknown Source)
                at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
                at java.util.concurrent.AbstractExecutorService.submit(Unknown Source)
                at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:919)
                at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:263)
                at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
                at org.apache.catalina.core.StandardService.startInternal(StandardService.java:432)
                at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
                at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:927)
                at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
                at org.apache.catalina.startup.Catalina.start(Catalina.java:795)
                at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
                at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
                at java.lang.reflect.Method.invoke(Unknown Source)
                at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:345)
                at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:476)
26-Dec-2021 12:02:00.804 SEVERE [main] org.apache.tomcat.jakartaee.Migration.migrateArchiveStreaming Failed to migrate archive [URWAYPGService.war]. Using the "-zipInMemory" option may help.
        java.util.zip.ZipException: duplicate entry: META-INF/LICENSE
                at java.util.zip.ZipOutputStream.putNextEntry(Unknown Source)
                at org.apache.tomcat.jakartaee.Migration.migrateArchiveStreaming(Migration.java:228)
                at org.apache.tomcat.jakartaee.Migration.migrateStream(Migration.java:289)
                at org.apache.tomcat.jakartaee.Migration.migrateArchiveStreaming(Migration.java:229)
                at org.apache.tomcat.jakartaee.Migration.migrateStream(Migration.java:289)
                at org.apache.tomcat.jakartaee.Migration.migrateFile(Migration.java:200)
                at org.apache.tomcat.jakartaee.Migration.execute(Migration.java:166)
                at org.apache.catalina.startup.HostConfig.migrateLegacyApp(HostConfig.java:1298)
                at org.apache.catalina.startup.HostConfig$MigrateApp.run(HostConfig.java:2048)
                at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
                at java.util.concurrent.FutureTask.run(Unknown Source)
                at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
                at java.util.concurrent.AbstractExecutorService.submit(Unknown Source)
                at org.apache.catalina.startup.HostConfig.migrateLegacyApps(HostConfig.java:1260)
                at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:471)
                at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1708)
                at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:320)
                at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:123)
                at org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:423)
                at org.apache.catalina.util.LifecycleBase.setState(LifecycleBase.java:366)
                at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:946)
                at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:886)
                at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
                at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1396)
                at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1386)
                at java.util.concurrent.FutureTask.run(Unknown Source)
                at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
                at java.util.concurrent.AbstractExecutorService.submit(Unknown Source)
                at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:919)
                at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:263)
                at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
                at org.apache.catalina.core.StandardService.startInternal(StandardService.java:432)
                at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
                at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:927)
                at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
                at org.apache.catalina.startup.Catalina.start(Catalina.java:795)
                at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
                at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
                at java.lang.reflect.Method.invoke(Unknown Source)
                at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:345)
                at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:476)
26-Dec-2021 12:02:00.807 WARNING [main] org.apache.catalina.startup.HostConfig.migrateLegacyApp Migration failure
        java.util.zip.ZipException: duplicate entry: META-INF/LICENSE
                at java.util.zip.ZipOutputStream.putNextEntry(Unknown Source)
                at org.apache.tomcat.jakartaee.Migration.migrateArchiveStreaming(Migration.java:228)
                at org.apache.tomcat.jakartaee.Migration.migrateStream(Migration.java:289)
                at org.apache.tomcat.jakartaee.Migration.migrateArchiveStreaming(Migration.java:229)
                at org.apache.tomcat.jakartaee.Migration.migrateStream(Migration.java:289)
                at org.apache.tomcat.jakartaee.Migration.migrateFile(Migration.java:200)
                at org.apache.tomcat.jakartaee.Migration.execute(Migration.java:166)
                at org.apache.catalina.startup.HostConfig.migrateLegacyApp(HostConfig.java:1298)
                at org.apache.catalina.startup.HostConfig$MigrateApp.run(HostConfig.java:2048)
                at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
                at java.util.concurrent.FutureTask.run(Unknown Source)
                at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
                at java.util.concurrent.AbstractExecutorService.submit(Unknown Source)
                at org.apache.catalina.startup.HostConfig.migrateLegacyApps(HostConfig.java:1260)
                at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:471)
                at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1708)
                at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:320)
                at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:123)
                at org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:423)
                at org.apache.catalina.util.LifecycleBase.setState(LifecycleBase.java:366)
                at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:946)
                at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:886)
                at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
                at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1396)
                at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1386)
                at java.util.concurrent.FutureTask.run(Unknown Source)
                at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
                at java.util.concurrent.AbstractExecutorService.submit(Unknown Source)
                at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:919)
                at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:263)
                at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
                at org.apache.catalina.core.StandardService.startInternal(StandardService.java:432)
                at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
                at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:927)
                at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
                at org.apache.catalina.startup.Catalina.start(Catalina.java:795)
                at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
                at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
                at java.lang.reflect.Method.invoke(Unknown Source)
                at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:345)
                at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:476)
26-Dec-2021 12:02:00.825 INFO [main] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory [D:\SAUDI_PG\upgrade-tomcat-10\apache-tomcat-10.0.14-windows-x64\apache-tomcat-10.0.14\webapps\docs]

您的 jar 文件包含重复的条目,这可能会导致部署时出现问题。如果您 运行 使用您的 jar 文件执行以下命令,您将看到重复的条目:

    $ unzip -l URWAYPGService.war |grep META