新建maven工程无法启动问题解决

时间:2024-05-20 14:47:29

根据需要把系统中的一部分功能从原系统抽离出来,成为一个独立的新的工程,但是在启动过程中遇到了许多问题

问题:1 项目抽离完成后无法添加到tomcat中如下所示,在add and Remove中找不到相应的工程

新建maven工程无法启动问题解决

解决:右键项目properties》project facets>将Dynamic Web Module 勾选(如右图新建maven工程无法启动问题解决)》Apply》OK。再次add and Remove就可以找到相应工程了

新建maven工程无法启动问题解决

问题2:添加到tomcat以后,运行tomcat发现不能启动项目

问题原因:将maven转换为Dynamic Web Module以后会生成WebContent目录,在tomcat启动时eclipse会找到里面的WebContent,将/它下的文件复制到tomcat

解决:   把WebContent替换成/src/main/webapp就可以了,到这里eclipse可以将将/src/main/webapp下的文件复制到tomcat了

然后还有要将.settings下的两个文件.jsdtscope和org.eclipse.wst.common.component进行如下修改:

org.eclipse.wst.common.component中的 <wb-resource deploy-path="/" source-path="/src/main/WebContent"/>修改为<wb-resource deploy-path="/" source-path="/src/main/webapp"/>。.jsdtscope加上<classpathentry kind="src" path="target/autodeploy-0.0.1-SNAPSHOT"/>

.jsdtscope的配置如下:

<?xml version="1.0" encoding="UTF-8"?>
<classpath>
    <classpathentry kind="src" path="target/autodeploy-0.0.1-SNAPSHOT"/><!-此处为新增->
    <classpathentry excluding="**/bower_components/*|**/node_modules/*|**/*.min.js" kind="src" path="src/main/webapp"/>
    <classpathentry kind="src" path="target/m2e-wtp/web-resources"/>
    <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="wechat">
        <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="/target/autodeploy-0.0.1-SNAPSHOT"/>
        <wb-resource deploy-path="/" source-path="/src/main/webapp"/><!-此处原来是WebContent,修改为webapp->
        <property name="context-root" value="wechat"/>
        <property name="java-output-path" value="/wechat/target/classes"/>
    </wb-module>
</project-modules>
然后再启动项目就可以了