Java [Path]中的类路径清单属性引用了一个或多个不存在的文件
我在Java 11/Spring Boot 2.1迁移中遇到了一个问题,在该迁移中,项目进行编译,但运行仅返回:Java [Path]中的类路径清单属性引用了一个或多个不存在的文件,java,maven,intellij-idea,Java,Maven,Intellij Idea,我在Java 11/Spring Boot 2.1迁移中遇到了一个问题,在该迁移中,项目进行编译,但运行仅返回: Connected to the target VM, address: '127.0.0.1:5754', transport: 'socket' The Class-Path manifest attribute in C:\Users\{user}\.m2\repository\xalan\serializer\2.7.2\serializer-2.7.2.jar refere
Connected to the target VM, address: '127.0.0.1:5754', transport: 'socket'
The Class-Path manifest attribute in C:\Users\{user}\.m2\repository\xalan\serializer\2.7.2\serializer-2.7.2.jar referenced one or more files that do not exist:
file:/C:/Users/{user}/.m2/repository/xalan/serializer/2.7.2/xml-apis.jar
The Class-Path manifest attribute in C:\Users\{user}\.m2\repository\xalan\xalan\2.7.2\xalan-2.7.2.jar referenced one or more files that do not exist:
file:/C:/Users/{user}/.m2/repository/xalan/xalan/2.7.2/xercesImpl.jar,file:/C:/Users/{user}/.m2/repository/xalan/xalan/2.7.2/xml-apis.jar,file:/C:/Users/{user}/.m2/repository/xalan/xalan/2.7.2/serializer.jar
Disconnected from the target VM, address: '127.0.0.1:5754', transport: 'socket'
Process finished with exit code 1
我尝试过更新maven版本、maven编译器版本等
如何修复此问题?将
-Xlint:-path
添加到maven编译器插件中
:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.7.0</version>
<configuration>
<compilerArgs>
<arg>-Xlint:-path</arg>
</compilerArgs>
</configuration>
</plugin>
org.apache.maven.plugins
maven编译器插件
3.7.0
-Xlint:-路径
在更改logback spring.xml
文件后,我遇到了类似的问题
应用程序将不再启动,我只能看到一些类似于您描述的信息消息,但这不是问题的实际原因
应用程序在该点之后失败,但由于mylogback spring.xml
中的问题,无法准确记录任何错误消息
因此,如果您没有看到任何其他错误消息,请尝试再次检查您的日志机制是否配置正确。由于此问题继续获得流量,我将发布答案和评论的摘要- 标题中描述的消息是警告,而不是错误,不应导致应用程序崩溃 如果您的应用程序正在崩溃,请检查日志中较早的错误,这些错误会导致应用程序退出
在没有错误输出的情况下,一些人报告问题是由过时的依赖项引起的,该依赖项需要作为Spring/Spring Boot/Java升级的一部分进行更新。请检查pom.xml中是否有“Spring Boot devtools dependency”,然后将其删除并重试vm选项-Dspring.profiles.active={profileName}在我的例子中,关联的失败是由于其他静默错误造成的(虽然这些通知是日志中唯一的输出,这就是为什么我检查了它们,并且没有与实际错误关联的日志输出) 我有一个错误的
应用程序。yml
结构如下:
logging:
level:
root: ${LOG_LEVEL:info}
ru.pflb.foundation.config.RequestResponseLoggingFilter: ${LOG_LEVEL_HTTP:trace}
org #<-- that caused the problem
org:
apache.kafka.clients.NetworkClient: ERROR
hibernate: WARN
日志记录:
级别:
根:${LOG\u LEVEL:info}
Ru.PFLB.Fuff.FraseRealSuffggIfter:${LogiLoopyHTP:Trace}
org#我也遇到了同样的问题。在配置文件中进行格式更正后,应用程序启动。在我的情况下,我在向spring boot devtools添加依赖项时遇到了类似的错误
对于快速诊断,您可以尝试禁用(注释掉)此依赖项您是要修复它,还是只是抑制消息?@VGR这只是一个警告而不是错误吗?我认为这是在阻止进程运行,因为消息本身只是警告,但与Java中的所有警告一样,它们值得注意。它们告诉我们您知道serializer-2.7.2.jar和xalan-2.7.2.jar希望在同一目录中找到它们所依赖的其他.jar文件,但Maven在程序运行时没有将它们组合到一个目录中。如果它们通过其他方式放置在类路径中,您的程序可能会由于其他原因过早返回。我只是重复了一下-检查了列出的路径,但文件不在那里。因为这是我第一次使用这个特定的项目(我的任务是将它升级到Java 11,作为项目的介绍),这可能是我需要手动下载才能添加的缺少的依赖项?@8t12c7081是的,有一个依赖项已过时。不知道为什么它没有打印任何日志,只是退出。这没有解决。我使用的是编译器版本3.8.0(但也尝试了3.7),这有什么区别吗?这些是运行时警告,而不是编译时警告。对我来说,我在运行应用程序时遇到了这个错误,在运行应用程序时,构建为jaxb-impl-2.3.0创建了两个相同的jar文件。一旦我将环境设置为dev,应用程序就启动了。这解决了我的问题。我试图迁移到logback spring.xml。我删除了整个.m2此文件夹&无法访问任何地方..ThanksThanks,正是我的问题(logback-spring.xml中有一个合并冲突,我一开始没有看到)Hi Yash。欢迎使用stackoverflow。请格式化代码并编辑答案以澄清问题。