当所有 Tapestry jar 都在网络之外时 JsonModule 未加载 war

JsonModule not loading when all Tapestry jars are outside of web war

我正在试验项目结构并使用最新的 Tapestry 版本 5.4.1。我尝试将 jar 从 WEB WAR 外部移动到 class 路径中。

启动应用程序时出现以下错误。

[localhost-startStop-1] org.apache.catalina.core.StandardContext.filterStart 异常启动过滤器应用程序 java.lang.RuntimeException:从清单 jar:file:/C:/Program%20Files/MyProject/Shared/lib/main/tapestry-json-5.4.1.jar!/META-INF/MANIFEST.MF 加载模块异常:加载 Tapestry IoC 模块失败 class org.apache.tapestry5.json.modules.JSONModule:模块 class org.apache.tapestry5.json.modules.JSONModule 包含无法识别的 public 方法:public static void org.apache.tapestry5.json.modules.JSONModule.provideCoercions(org.apache.tapestry5.ioc.Configuration). 在 org.apache.tapestry5.ioc.IOCUtilities.addModulesInManifest(IOCUtilities.java:123)

原因:java.lang.RuntimeException:加载 Tapestry IoC 模块失败 class org.apache。tapestry5.json.modules.JSONModule:模块 class org.apache。tapestry5.json.modules.JSONModule 包含无法识别的 public 方法:public static void org.apache.tapestry5.json.modules.JSONModule.provideCoercions(org.apache.tapestry5.ioc.Configuration)。 在 org.apache.tapestry5.ioc.RegistryBuilder.add(RegistryBuilder.java:162) 在 org.apache.tapestry5.ioc.IOCUtilities.addModulesInList(IOCUtilities.java:137) 在 org.apache.tapestry5.ioc.IOCUtilities.addModulesInManifest(IOCUtilities.java:107)

我认为应该work.Can有人看一下并提出建议吗?

谢谢。

我发现了这个问题,我们有多个 Tapestry 网络应用程序,我在同一个 tomcat 中集中了一个而不是其他人,这似乎与类路径罐子混合,然后在 web-inf/lib 中混合了罐子其他网络应用程序。当我从其他 web-app 中取出罐子时,至少没有发生这个问题。我还有其他问题,但与这个问题无关。我要尝试更多