当创建一个Java Web项目时,会生成一个WebContent文件夹,这个WebContent里面存放的是我们Web应用的资源比如JavaScript脚本文件和HTML等。当部署的时候,这个文件夹就没有了。这是因为在打包时,按照我们在"Deployment Assembly"中的配置,通常会把这个路径下的文件打包到根目录下。项目点右键,点properties,在属性里选择Deployment Assembly,这个可以定义Web项目部署到服务器之后的文件夹映射关系。
但有时候,我们拿到的项目并不是WebContent,而是webRoot或者webApp等。这些文件作用是一样的,只不过不同的开发工具在创建web项目时,默认生成的文件不同。eclipse 默认指向WebContent;Maven项目,则会得到src/main/webapp;MyEclipse的时候创建一个Web Project,就会生成WebRoot文件夹。
Eclipse在创建普通web项目时,在进行到Web Module 时将 Content Directory 的属性设置为想要设置的名称即可。
如果是一个现成的项目:
1.直接在项目中修改:通过点击 "Further Configuration availabe"链接,打开Web Module 的设置,就可以修改Content Directory为想要设置的名称。
注:"Further configuration available"打开路径:项目右键>properties>Project Facets,在右侧下方可找到链接;
如果下边的没有Further configuration available,可先把Dynamic web module 去掉勾选,应用与项目,再勾选Dynamic web module,就可以找到了。
2.改配置文件,打开.setting 文件夹下的 org.eclipse.wst.common.component文件
<wb-module deploy-name="mq-project">
<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="/src/test/java"/>
<wb-resource deploy-path="/" source-path="/src/main/webapp" tag="defaultRootSource"/>
<property name="context-root" value="mq-project"/>
<property name="java-output-path" value="/mq-project/target/classes"/>
</wb-module>
将org.eclipse.wst.common.project.facet.core.xml 文件 中
<installed facet="java" version=" 1.7 "/> 指定JDK版本
<installed facet="jst.web" version="3.0"/> 这一行指定Web版本,指servlet和jsp。注意同步把web.xml中的 <web-app>中相关的xmlns改为对应的版本
如果为maven项目,还需将.jsdtscope 文件,kind="src"的path属性改为以上路径。
<classpathentry excluding="**/bower_components/*|**/node_modules/*|**/*.min.js" kind="src" path="src/main/webapp"/>