如果重复,对不起。
我正在使用 gradle 构建我的 .war 文件并使用 Jetty 启动我的应用程序。但是我看到此错误消息
java.lang.IllegalStateException: Duplicate fragment name: spring_web for jar:file:/private/var/folders/r7/z7yqbhx10wl9kyw738crggdd0zwztx/T/jetty-0.0.0.0-8080-application-1.0.war-_pplication-1.0-any-/webapp/WEB-INF/lib/spring-web-4.1.9.RELEASE.jar!/META-INF/web-fragment.xml and jar:file:/private/var/folders/r7/z7yqbhx10wl9kyw738crggdd0zwztx/T/jetty-0.0.0.0-8080-cpplication-1.0.war-_pplication-1.0-any-/webapp/WEB-INF/lib/spring-web-4.1.9.RELEASE.jar!/META-INF/web-fragment.xml
我已经对互联网做了一些研究,但所有人都在谈论 jetty-maven-plugin,解决方案是将"<allowDuplicateFragmentNames>true</allowDuplicateFragmentNames>"
添加到 webAppConfig。但是在我的应用程序中,我没有webAppConfig。这只适用于马文吗?如果我使用 Gradle,如何解决这个问题?
谢谢!
你可以把Jetty.xml放在WEB-INF下
码头.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE Configure PUBLIC
"-//Mort Bay Consulting//DTD Configure//EN"
"http://www.eclipse.org/jetty/configure_9_0.dtd">
<Configure class="org.eclipse.jetty.webapp.WebAppContext">
<Set name="allowDuplicateFragmentNames">true</Set>
</Configure>
在 WEB-INF/web.xml 中,查找代码(应位于顶部(,然后修改属性以匹配以下值:
<web-app version="3.0" xmlns="http://java.sun.com/xml/ns/j2ee"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
metadata-complete="true"
..
>