首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Pact Maven-Springboot车间步骤1与IllegalStateException一起失败:未能获得条目启动-INF/lib/logback的嵌套存档-经典-1.2.3.jar

Pact Maven-Springboot车间步骤1与IllegalStateException一起失败:未能获得条目启动-INF/lib/logback的嵌套存档-经典-1.2.3.jar
EN

Stack Overflow用户
提问于 2022-10-10 12:39:12
回答 1查看 45关注 0票数 0

我试图遵循Pact Maven-Springboot车间中的步骤,但在运行以下命令时在第一步上得到了这个错误: java -jar目标/Product-Cat-0.0.1-SNAPSHOT.jar:

代码语言:javascript
运行
复制
C:\Users\57046\git\pact-workshop-Maven-Springboot-JUnit5\consumer>java -jar target/product-catalogue-0.0.1-SNAPSHOT.jar
Exception in thread "main" java.lang.IllegalStateException: Failed to get nested archive for entry BOOT-INF/lib/logback-classic-1.2.3.jar
        at org.springframework.boot.loader.archive.JarFileArchive.getNestedArchive(JarFileArchive.java:104)
        at org.springframework.boot.loader.archive.JarFileArchive$NestedArchiveIterator.adapt(JarFileArchive.java:237)
        at org.springframework.boot.loader.archive.JarFileArchive$NestedArchiveIterator.adapt(JarFileArchive.java:228)
        at org.springframework.boot.loader.archive.JarFileArchive$AbstractIterator.next(JarFileArchive.java:189)
        at org.springframework.boot.loader.ExecutableArchiveLauncher.createClassLoader(ExecutableArchiveLauncher.java:87)
        at org.springframework.boot.loader.Launcher.launch(Launcher.java:55)
        at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:88)
Caused by: java.io.IOException: Unable to open nested jar file 'BOOT-INF/lib/logback-classic-1.2.3.jar'
        at org.springframework.boot.loader.jar.JarFile.getNestedJarFile(JarFile.java:288)
        at org.springframework.boot.loader.jar.JarFile.getNestedJarFile(JarFile.java:274)
        at org.springframework.boot.loader.archive.JarFileArchive.getNestedArchive(JarFileArchive.java:100)
        ... 6 more
Caused by: java.lang.IndexOutOfBoundsException
        at org.springframework.boot.loader.jar.AsciiBytes.<init>(AsciiBytes.java:73)
        at org.springframework.boot.loader.jar.CentralDirectoryFileHeader.load(CentralDirectoryFileHeader.java:85)
        at org.springframework.boot.loader.jar.CentralDirectoryParser.parseEntries(CentralDirectoryParser.java:68)
        at org.springframework.boot.loader.jar.CentralDirectoryParser.parse(CentralDirectoryParser.java:57)
        at org.springframework.boot.loader.jar.JarFile.<init>(JarFile.java:137)
        at org.springframework.boot.loader.jar.JarFile.<init>(JarFile.java:123)
        at org.springframework.boot.loader.jar.JarFile.createJarFileFromFileEntry(JarFile.java:319)
        at org.springframework.boot.loader.jar.JarFile.createJarFileFromEntry(JarFile.java:296)
        at org.springframework.boot.loader.jar.JarFile.getNestedJarFile(JarFile.java:285)
        ... 8 more

按照斯蒂芬的建议,我检查了上面提到的罐子是否腐败。mvn依赖项:分析打印如下:

代码语言:javascript
运行
复制
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  29.455 s
[INFO] Finished at: 2022-10-11T15:26:10+03:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-dependency-plugin:3.1.2:analyze (default-cli) on project product-catalogue: Cannot analyze dependencies: invalid CEN header (bad signature) -> [Help 1]

我删除了jar文件,运行mvnw验证(没有错误,也没有记录jar再次下载的日志),然后运行mvn依赖:再次分析,这给了我:

代码语言:javascript
运行
复制
[WARNING] Used undeclared dependencies found:
[WARNING]    org.springframework.boot:spring-boot:jar:2.4.3:compile
[WARNING]    org.springframework:spring-web:jar:5.3.4:compile
[WARNING]    org.springframework:spring-beans:jar:5.3.4:compile
[WARNING]    org.springframework:spring-context:jar:5.3.4:compile
[WARNING]    org.springframework.boot:spring-boot-autoconfigure:jar:2.4.3:compile
[WARNING] Unused declared dependencies found:
[WARNING]    org.springframework.boot:spring-boot-starter-web:jar:2.4.3:compile
[WARNING]    org.springframework.boot:spring-boot-starter-thymeleaf:jar:2.4.3:compile
[WARNING]    org.springframework.boot:spring-boot-starter-test:jar:2.4.3:test
[WARNING]    org.projectlombok:lombok:jar:1.18.16:provided
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  6.768 s
[INFO] Finished at: 2022-10-11T16:00:05+03:00

但是,当我试图运行代码时,仍然会得到相同的异常。

根据另一项建议,我运行mvn spring-boot:run但got:

代码语言:javascript
运行
复制
C:\Users\57046\git\pact-workshop-Maven-Springboot-JUnit5\consumer>mvn spring-boot:run
[INFO] Scanning for projects...
[INFO]
[INFO] -----------------< io.pact.workshop:product-catalogue >-----------------
[INFO] Building product-catalogue 0.0.1-SNAPSHOT
[INFO] --------------------------------[ jar ]---------------------------------
[INFO]
[INFO] >>> spring-boot-maven-plugin:2.4.3:run (default-cli) > test-compile @ product-catalogue >>>
[INFO]
[INFO] --- maven-resources-plugin:3.2.0:resources (default-resources) @ product-catalogue ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Using 'UTF-8' encoding to copy filtered properties files.
[INFO] Copying 1 resource
[INFO] Copying 5 resources
[INFO]
[INFO] --- maven-compiler-plugin:3.8.1:compile (default-compile) @ product-catalogue ---
[INFO] Nothing to compile - all classes are up to date
[INFO]
[INFO] --- maven-resources-plugin:3.2.0:testResources (default-testResources) @ product-catalogue ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Using 'UTF-8' encoding to copy filtered properties files.
[INFO] skip non existing resourceDirectory C:\Users\57046\git\pact-workshop-Maven-Springboot-JUnit5\consumer\src\test\resources
[INFO]
[INFO] --- maven-compiler-plugin:3.8.1:testCompile (default-testCompile) @ product-catalogue ---
[INFO] No sources to compile
[INFO]
[INFO] <<< spring-boot-maven-plugin:2.4.3:run (default-cli) < test-compile @ product-catalogue <<<
[INFO]
[INFO]
[INFO] --- spring-boot-maven-plugin:2.4.3:run (default-cli) @ product-catalogue ---
[INFO] Attaching agents: []
Exception in thread "main" java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory
        at org.apache.logging.slf4j.SLF4JLoggerContext.getLogger(SLF4JLoggerContext.java:39)
        at org.apache.commons.logging.LogAdapter$Log4jLog.<init>(LogAdapter.java:165)
        at org.apache.commons.logging.LogAdapter$Log4jAdapter.createLog(LogAdapter.java:122)
        at org.apache.commons.logging.LogAdapter.createLog(LogAdapter.java:89)
        at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:67)
        at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:59)
        at org.springframework.boot.SpringApplication.<clinit>(SpringApplication.java:203)
        at io.pact.workshop.product_catalogue.Application.main(Application.java:12)
Caused by: java.lang.ClassNotFoundException: org.slf4j.LoggerFactory
        at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
        ... 8 more
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  5.030 s
[INFO] Finished at: 2022-10-11T16:18:48+03:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.springframework.boot:spring-boot-maven-plugin:2.4.3:run (default-cli) on project product-catalogue: Application finished with exit code: 1 -> [Help 1]

这更让人困惑,因为它为另一个类获取了NoClassDefFoundError。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-10-17 06:12:06

我认为consumer\pom.xml中缺少一个条目。当我添加这个依赖项时:

代码语言:javascript
运行
复制
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-logging</artifactId> 
</dependency>

按照这个答案的说法,它开始工作了。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74015105

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档