解决eclipse创建的maven web项目,无法发布到tomcat

本文介绍了如何解决Eclipse低版本导致的Maven Web项目无法顺利集成Tomcat的问题。通过将Maven项目转换为动态Web项目,并修改.settings目录下的.jsdtscope和org.eclipse.wst.common.component文件,将WebContent替换为/src/main/webapp,并配置maven编译后的jar路径,确保项目能正确部署到Tomcat。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

有些eclipse可能是版本低的原因,导致eclipse、maven、tomcat不能很好集成。下面是解决这个问题的个人经验。

1:创建一个maven项目,这一步不详细说了。

2:右击,将maven项目转为动态web项目。

3:maven项目生成时会有一个/src/main/webapp的文件夹,这个其实对应eclipse动态web项目的WebContent目录。 eclipse在上面转换maven项目为动态web项目时会生成几个文件在项目下的.settings下,其中有两个文件需要修改.jsdtscope和org.eclipse.wst.common.component,找到里面的WebContent,将其替换成/src/main/webapp即可,到这里eclipse可以将将/src/main/webapp下的文件复制到tomcat了,但还有一个问题,maven所管理的jar无法复制到tomcat,同样在前面两个文件里将maven编译后项目所在的路径配置进去就可了。org.eclipse.wst.common.component加上<wb-resource deploy-path="/" source-path="/target/autodeploy-0.0.1-SNAPSHOT"/>。.jsdtscope加上<classpathentry kind="src" path="target/autodeploy-0.0.1-SNAPSHOT"/>,最后将WebContent目录删除。


最后.jsdtscope的配置如下:

<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="target/autodeploy-0.0.1-SNAPSHOT"/><!--这一行是新加的-->
<classpathentry kind="src" path="src/main/webapp"/><!--这一行原来的path是WebContent->
<classpathentry kind="con" path="org.eclipse.wst.jsdt.launching.JRE_CONTAINER"/>
<classpathentry kind="con" path="org.eclipse.wst.jsdt.launching.WebProject">
<attributes>
<attribute name="hide" value="true"/>
</attributes>
</classpathentry>
<classpathentry kind="con" path="org.eclipse.wst.jsdt.launching.baseBrowserLibrary"/>
<classpathentry kind="output" path=""/>
</classpath>

org.eclipse.wst.common.component的配置如下:

<?xml version="1.0" encoding="UTF-8"?>
<project-modules id="moduleCoreId" project-version="1.5.0">
    <wb-module deploy-name="autodeploy">
<wb-resource deploy-path="/" source-path="/target/autodeploy-0.0.1-SNAPSHOT"/><!--这一行是新加的-->
        <wb-resource deploy-path="/" source-path="/src/main/webapp" tag="defaultRootSource"/><!--这一行原来source-path是WebContent->
        <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="/WEB-INF/classes" source-path="/src/test/resources"/>
        <property name="context-root" value="autodeploy"/>
        <property name="java-output-path" value="/autodeploy/src/main/webapp/WEB-INF/classes"/>
    </wb-module>
</project-modules>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值