gpt4 book ai didi

eclipse - 部署 webapp 时 IllegalArgument : javax. inject-Extension-Name

转载 作者:行者123 更新时间:2023-11-28 23:34:37 25 4
gpt4 key购买 nike

使用我的网络应用程序启动 Tomcat 7.0.54 时出现以下异常。当通过 Eclipse 运行 tomcat 时,同样的 webapp 可以正常启动。我最初部署为 war 文件,然后作为爆炸 war 。仅当未在 Eclipse 中运行时才会出现异常。我已经在多个平台上尝试过了。

我认为这可能是由于 javax.inject 库在解析 list 文件时不在 tomcat 类路径中的结果,所以我将 javax.inject.jar 文件添加到 tomcat 库目录中......相同交易。我实际上在任何文件中都找不到参数值“javax-inject-Extension-Name”。

有没有人看过这个,或者有什么建议?

谢谢。

SEVERE: ContainerBase.addChild: start:
org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/rdf.service]]
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154)
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:632)
at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:1083)
at org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1880)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.IllegalArgumentException: javax.inject-Extension-Name
at java.util.jar.Attributes$Name.<init>(Attributes.java:464)
at java.util.jar.Attributes.getValue(Attributes.java:116)
at org.apache.catalina.util.ManifestResource.getRequiredExtensions(ManifestResource.java:185)
at org.apache.catalina.util.ManifestResource.processManifest(ManifestResource.java:154)
at org.apache.catalina.util.ManifestResource.<init>(ManifestResource.java:50)
at org.apache.catalina.util.ExtensionValidator.validateApplication(ExtensionValidator.java:196)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5289)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
... 10 more

最佳答案

问题最终出在我从 github 上提取并使用 maven 构建的依赖 jar 上。该 pom 文件在使用 maven jar 插件构建 jar 时指定了 addExtensions 选项。其中一个扩展是 javax.inject...然而,maven jar 插件将其转换为 java_inject-Extension-Name,但在扩展列表中将其保留为 javax.inject...这种断开连接是导致问题的原因。

在 eclipse 中运行时,它不能做同样的验证。在 Manifest.mf 文件中重建没有扩展名的 jar 解决了这个问题。

关于eclipse - 部署 webapp 时 IllegalArgument : javax. inject-Extension-Name,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25717757/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com