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

 更新时间:2017年12月14日 14:26:08   作者:Joryun刘家源  
这篇文章主要给大家介绍了关于Java开发之普通web项目转为Maven项目的相关资料,文中通过图文将转换的方法步骤介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。

前言

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”依赖


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

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


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


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

<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),当然前提是网速要好哈!


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

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


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

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

重要的是 WEB-INF 文件夹


5.重新部署并测试

重新部署至 Tomcat(或Jetty) 测试效果。

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

总结

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

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

相关文章

  • java Swing JFrame框架类中setDefaultCloseOperation的参数含义与用法示例

    java Swing JFrame框架类中setDefaultCloseOperation的参数含义与用法示例

    这篇文章主要介绍了java Swing JFrame框架类中setDefaultCloseOperation的参数含义与用法,结合实例形式分析了Swing组件的JFrame框架类中setDefaultCloseOperation方法的简单使用技巧,需要的朋友可以参考下
    2017-11-11
  • SpringCloud中NacosNamingService的作用详解

    SpringCloud中NacosNamingService的作用详解

    这篇文章主要介绍了SpringCloud中NacosNamingService的作用详解,NacosNamingService类完成服务实例注册,撤销与获取服务实例操作,NacosNamingService初始化采用单例模式,使用反射生成,需要的朋友可以参考下
    2023-11-11
  • kafka添加安全验证配置方式

    kafka添加安全验证配置方式

    这篇文章主要介绍了kafka添加安全验证配置方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-10-10
  • 手把手教你使用IDEA创建多模块(maven)项目

    手把手教你使用IDEA创建多模块(maven)项目

    这篇文章主要给大家介绍了关于如何使用IDEA创建多模块(maven)项目的相关资料,文中通过图文以及实例代码介绍的非常详细,需要的朋友可以参考下
    2023-07-07
  • JDBC中Statement的Sql注入问题详解

    JDBC中Statement的Sql注入问题详解

    这篇文章主要介绍了JDBC中Statement的Sql注入问题详解,sql注入攻击指的是通过构建特殊的输入作为参数传入web应用程序,而这些输入大都是sql语法里的一些组合,通过执行sql语句进而执行攻击者所要做的操作,需要的朋友可以参考下
    2023-10-10
  • 配置JAVA环境变量中CLASSPATH变量的作用

    配置JAVA环境变量中CLASSPATH变量的作用

    这篇文章主要介绍了配置JAVA环境变量中CLASSPATH变量的作用,需要的朋友可以参考下
    2023-06-06
  • java代码实现编译源文件

    java代码实现编译源文件

    这篇文章主要为大家详细介绍了Java通过 JavaCompiler 实现编译源文件的相关知识,文中的示例代码讲解详细,感兴趣的小伙伴可以了解一下
    2025-01-01
  • Spring Data JPA自动生成表时列顺序混乱的最新解决办法

    Spring Data JPA自动生成表时列顺序混乱的最新解决办法

    文章主要介绍了Spring Boot 3.3.5版本中SpringDataJPA自动生成表时列顺序混乱的问题,以及如何通过替换Hibernate实现来解决这个问题,感兴趣的朋友跟随小编一起看看吧
    2024-11-11
  • SpringBoot集成Session的实现示例

    SpringBoot集成Session的实现示例

    Session是一个在Web开发中常用的概念,它表示服务器和客户端之间的一种状态管理机制,用于跟踪用户在网站或应用程序中的状态和数据,本文主要介绍了SpringBoot集成Session的实现示例,感兴趣的可以了解一下
    2023-09-09
  • 用Java实现简单画板功能

    用Java实现简单画板功能

    这篇文章主要为大家详细介绍了用Java实现简单画板功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-06-06

最新评论