当前位置: 首页 > 知识库问答 >
问题:

在pom中添加tomcat嵌入jasper工件后,Java应用程序抛出错误。xml

祁英哲
2023-03-14

在添加tomcat嵌入jasper依赖项后,我遇到以下错误。

Exception in thread "main" java.lang.IllegalStateException: Failed to read Class-Path attribute from manifest of jar file:/C:/Users/Vishal/.m2/repository/org/eclipse/jdt/ecj/3.12.3/ecj-3.12.3.jar
at org.springframework.boot.devtools.restart.ChangeableUrls.getUrlsFromClassPathOfJarManifestIfPossible(ChangeableUrls.java:110)
at org.springframework.boot.devtools.restart.ChangeableUrls.fromUrlClassLoader(ChangeableUrls.java:96)
at org.springframework.boot.devtools.restart.DefaultRestartInitializer.getUrls(DefaultRestartInitializer.java:93)
at org.springframework.boot.devtools.restart.DefaultRestartInitializer.getInitialUrls(DefaultRestartInitializer.java:56)
at org.springframework.boot.devtools.restart.Restarter.<init>(Restarter.java:140)
at org.springframework.boot.devtools.restart.Restarter.initialize(Restarter.java:546)
at org.springframework.boot.devtools.restart.RestartApplicationListener.onApplicationStartingEvent(RestartApplicationListener.java:67)
at org.springframework.boot.devtools.restart.RestartApplicationListener.onApplicationEvent(RestartApplicationListener.java:45)
at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:172)
at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:165)
at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:139)
at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:122)
at org.springframework.boot.context.event.EventPublishingRunListener.starting(EventPublishingRunListener.java:69)
at org.springframework.boot.SpringApplicationRunListeners.starting(SpringApplicationRunListeners.java:48)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:292)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1118)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1107)
at com.example.demo.DemoApplication.main(DemoApplication.java:10)
Caused by: java.util.zip.ZipException: invalid LOC header (bad signature)
at java.util.zip.ZipFile.read(Native Method)
at java.util.zip.ZipFile.access$1400(ZipFile.java:60)
at java.util.zip.ZipFile$ZipFileInputStream.read(ZipFile.java:734)
at java.util.zip.ZipFile$ZipFileInflaterInputStream.fill(ZipFile.java:434)
at java.util.zip.InflaterInputStream.read(InflaterInputStream.java:158)
at sun.misc.IOUtils.readFully(IOUtils.java:65)
at java.util.jar.JarFile.getBytes(JarFile.java:425)
at java.util.jar.JarFile.getManifestFromReference(JarFile.java:193)
at java.util.jar.JarFile.getManifest(JarFile.java:180)
at org.springframework.boot.devtools.restart.ChangeableUrls.getUrlsFromManifestClassPathAttribute(ChangeableUrls.java:131)
at org.springframework.boot.devtools.restart.ChangeableUrls.getUrlsFromClassPathOfJarManifestIfPossible(ChangeableUrls.java:107)
... 17 more

我在每一个IDE中都尝试过,但我在任何地方都会遇到同样的错误。请帮我理解原因。Maven会自动更新依赖项,但当我运行应用程序时,会出现上述错误。

我添加下面的代码在pom.xml

    <dependency>
        <groupId>org.apache.tomcat.embed</groupId>
        <artifactId>tomcat-embed-jasper</artifactId>
        <scope>provided</scope>
    </dependency>

共有1个答案

贡俊
2023-03-14

这可能是罐子损坏的迹象。尝试从maven缓存中删除工件,或者简单地删除整个缓存C:/Users/Vishal/.m2/repository/),以便从头开始重新创建。

Spring Boot项目中报告的类似问题也通过这种方式得到了解决。

 类似资料:
  • 我正在尝试创建一个Spring Boot应用程序,除了当我访问localhost:8080时必须插入用户名和密码外,所有的东西都运行得很好。我不知道如何从我的应用程序向嵌入式tomcat添加一个新的tomcat用户。 这是我的pom XML: 下面是tomcat可见的项目结构:

  • 我有时会在pom中看到以下声明。xml。。。 如您所见,sping-boo-starter-web被声明为tomcat-embed-jasper。 是不是sping-boo-starter-web已经有一个嵌入式tomcat了?为什么一些开发人员仍然声明tomcat-embed-jasper以及boot-starter-web?还是有什么原因?

  • 我刚刚在运行PHP7.0.14的CentOS安装程序上安装了Symfony。但是,我在尝试运行时遇到以下问题: 我已经在网上寻找答案,并且已经尝试在php.ini中设置

  • 当我试图从web.xml映射ApplicationContext.xml文件以使用spring ioc时,我的应用程序没有开始在catalina.out中显示以下错误

  • 我试图在Maven下运行JavaFX应用程序。当我运行程序时,它显示出一些错误。 错误:在项目计算器上执行目标org.codehaus.mojo:exec-maven-plugin:1.2.1:java(默认-CLI)失败:目标org.codehaus.mojo:exec-maven-plugin:1.2.1:java的参数“main class”丢失或无效->[帮助1] 我应该在pom.xml文

  • 将Firebase In-App Messaging SDK添加到我的构建后。gradle,在构建我的项目我已经尝试了这里和这里提出的大多数解决方案,但都不适用于我。 下面是我在项目中使用的依赖项库 下面是完整的错误日志