服务器之家

服务器之家 > 正文

Java开发之普通web项目转为Maven项目的方法

时间:2021-03-05 14:49     来源/作者:Joryun刘家源

前言

maven是基于项目对象模型(project object model),可以通过一小段描述信息来管理项目的构建、报告和文档的项目管理工具,提供了一个仓库的概念,统一管理项目所依赖的第三方jar包,最大可能避免了由于环境变量的不同在不同电脑之间无法运行的问题,struts2、hibernate都是采用maven部署的项目。

现在网上有许多普通web项目转换为maven项目的博文,但由于项目的不同,所需的步骤及必须的转换步骤也不同。因此,本文章将以一个基于springmvc,spring,hibernate的商城项目为例,详述转换过程。

具体实例

说明

  • 开发环境:idea,mysql
  • 项目构建:暂无(已通过本文章成功转换为maven)
  • 软件环境:springmvc,spring,hibernate
  • 项目描述:商城系统

目的

将普通dynamic web项目转换为maven项目

步骤

前提

转换之前将项目置于github上,并clone到idea上,防止最后不成功而导致项目bug难以补救,毕竟git的revision功能相当棒呢!!

1. 将项目初步convert为maven项目

选择 add framework support ,并勾选导入“maven”依赖

Java开发之普通web项目转为Maven项目的方法

2. 备份lib接着移除lib,然后编写pom.xml

看到下面的一大片“红”,勿担心,那只是你“颠覆世界”的第一步,千万不能退缩

Java开发之普通web项目转为Maven项目的方法

接着备份lib,再移除项目的lib,将项目置于“空jar”状态

Java开发之普通web项目转为Maven项目的方法

补充pom.xml的头,自动生成的会略掉好几项必须的配置

?
1
2
3
4
5
6
7
<modelversion>4.0.0</modelversion>
 <groupid>com.shop</groupid>
 <artifactid>shop</artifactid>
 <packaging>war</packaging>
 <version>1.0-snapshot</version>
 <name>shop maven webapp</name>
 <url>http://maven.apache.org</url>

接着是个体力活,进入每个java、properties、xml、jsp等文件使用add maven依赖方式自动导入(快捷键: alt+enter),当然前提是网速要好哈!

Java开发之普通web项目转为Maven项目的方法

经过上步,已经初步导入了大部份必需的依赖,接着,将一些其它依赖(可参考之前备份的lib)随之导入,千万别忽略这一步,因为类似 mysql-connector-java 等这些依赖一般是还未导入的!

3. 将spring配置文件、数据库属性文件、日志配置文件等剪切至src/main/resources之下

Java开发之普通web项目转为Maven项目的方法

若是里面配置文件的映射路径有差错,记得进入改正,idea下cmd+鼠标可测试大部份不正确的路径。

4.将原来放置在webroot路径下的文件(包括js,css,jsp等)都剪切至webapp文件夹之下,并删除webroot文件夹

重要的是 web-inf 文件夹

Java开发之普通web项目转为Maven项目的方法

5.重新部署并测试

重新部署至 tomcat(或jetty) 测试效果。

基本上,到这一步离成功也就不远了(而我已经成功了)。若是...若是还有bug,多调调,看看日志,看看控制台输出,直至转换成功也不失为一次很棒的尝试。

总结

maven是一套相当不错的软件项目管理工具,因此很多程序猿可能会频频遇到dynamic web项目转换maven项目的情况,这时大家便可以学习起来,以备不时之需!共勉!!

好了,以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对服务器之家的支持。

原文链接:http://www.jianshu.com/p/ad00e5b2e275

相关文章

热门资讯

2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全 2019-12-26
yue是什么意思 网络流行语yue了是什么梗
yue是什么意思 网络流行语yue了是什么梗 2020-10-11
Intellij idea2020永久破解,亲测可用!!!
Intellij idea2020永久破解,亲测可用!!! 2020-07-29
背刺什么意思 网络词语背刺是什么梗
背刺什么意思 网络词语背刺是什么梗 2020-05-22
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总 2020-11-13
返回顶部