maven项目直接复制一份后,运行新的那份时,会不能运行(spring mvc解析不到要访问的页面)
解决方法:(我是直接在eclipse里面修改的当然也可以在项目文件夹里面找到相关的文件直接修改)
1.首先复制一份项目,我是在eclipse里面直接复制的,当然也可以直接复制项目文件夹(感觉差不多)。
2.复制后,
项目右键属性 --> Web Project Settings --> Context root
在Context root里面输入新的项目名,然后应用。
3.修改项目的pom.xml
<artifactId></artifactId>标签中输入新的项目名,然后保存
4,更新一下maven项目
不需要选强制选项,直接点OK。
下文可勾选项的解释
(1)Offline。线下的,勾选后update操作不会从maven远程仓库去查找要更新的jar包,而是从maven本地仓库查找pom.xml中配置的jar包以更新到项目。
(2)Force Update of Snapshots/Releases。强制更新Snapshots/Releases依赖,个人理解为“即使pom.xml文件没有发生变化,也会更新项目中的maven依赖jar包”。
(3)Update project configuration from pom.xml。从pom.xml更新项目配置。
(4)Refresh workspace resources from local filesystem。从本地文件系统刷新工作区资源。
(5)Clean projects。个人理解是删除之前编译的,重新编译
5.然后把项目加入Servers中(我用的Tomcat),可以发现变化,如下图
没修改项目名之前
修改项目名之后
然后就可以正常运行项目了
6.需要修改java-output-path的时候修改一下项目目录下:.settings\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="ssm-crud2-0.0.1-SNAPSHOT">
<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="/" source-path="/target/m2e-wtp/web-resources"/>
<wb-resource deploy-path="/" source-path="/src/main/webapp" tag="defaultRootSource"/>
<property name="java-output-path" value="/ssm-crud2/target/classes"/>
<property name="context-root" value="ssm-crud2"/>
</wb-module>
</project-modules>
修改标红的旧项目名
/ssm-crud2/target/classes 输出存储编译生成的*.class文件的路径