【发布时间】:2014-12-29 05:56:32
【问题描述】:
我在 Eclipse Luna 中的 maven 项目给了我这两个警告:
单根规则失效:Web 项目或 EAR 项目只允许一个部署路径为“/”的元素
和
单根规则失效:Web 项目的输出文件夹必须是 /WEB-INF/classesconfigurations-web
这是因为 maven 插件在 org.eclipse.wst.common.component 中使用以下 wb-resources 设置项目配置
<?xml version="1.0" encoding="UTF-8"?>
<project-modules id="moduleCoreId" project-version="1.5.0">
<wb-module deploy-name="sample-web">
<wb-resource deploy-path="/" source-path="/target/m2e-wtp/web-resources"/>
<wb-resource deploy-path="/" source-path="/src/main/webapp" tag="defaultRootSource"/>
<wb-resource deploy-path="/WEB-INF/classes" source-path="/src/main/java"/>
<wb-resource deploy-path="/WEB-INF/classes" source-path="/src/main/resources"/>
<wb-resource deploy-path="/WEB-INF/classes" source-path="/.apt_generated"/>
<property name="context-root" value="sample"/>
<property name="java-output-path" value="/sample-web/target/classes"/>
</wb-module>
</project-modules>
如何禁用此验证以摆脱烦人的警告?
【问题讨论】:
-
第一个可以阻止的,如果你只使用你的
<wb-resource deploy-path="/" source-path="..."/>条目之一。如何防止第二次警告,我也想知道…… -
很难找到第二个
output folder for a web project must be /WEB-INF/classes的修复程序。我还在寻找,但我可以告诉你什么 没有 起作用: - 从 org.eclipse.wst.common.component 中删除<property name="java-output-path" ...>(因为我已经读过它不再使用) - 在 Eclipse 中,将 Web 应用程序项目的 Output 文件夹(Java Build Path --> Source 选项卡)更改为 web-app-name/WEB-INF/classes -
我在 org.eclipse.wst.common.component 中有两个条目:
<wb-resource deploy-path="/WEB-INF/classes" source-path="src/main/java"/>和<wb-resource deploy-path="/WEB-INF/classes" source-path="src/main/resources"/>。我删除了它们并摆脱了第二个警告 -
你是怎么得到这个结果的? pom.xml 长什么样子?
标签: java eclipse maven m2e m2e-wtp