将Java Web项目转换为Maven项目
将普通 Java Web 项目转换为 Maven 构建项目
文章目录
步骤:
1. 将项目转换为 Maven 项目
这里可以用 IDE 类工具生成 pom.xml 的 maven 定义配置,也可以手工创建 pom.xml,内容用一个 Java 程序检索 jar 内 MANIFEST.MF 输出,再拼接为 dependency 节点的 xml 定义。
- 用 Intellij IDEA 举例:
右键项目 -> 选择Add framework support
,并勾选导入Maven
依赖,生成初始空的 pom.xml 文件,或者纯手工创建一个 pom.xml:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.ialtus.nhs</groupId>
<artifactId>nhs</artifactId>
<version>1.0-SNAPSHOT</version>
<dependencys>
</dependencys>
</project>
定义里面的 groupId
和 artifactId
,比如:
<groupId>com.ialtus.nhs</groupId>
<artifactId>nhs</artifactId>
MakePomFromJar.java
获取地址:https://code.youkuaiyun.com/snippets/2490389/
- 用
MakePomFromJars
根据lib
内的 jar 来生成 Maven 的依赖定义,可以加入 Java 项目调用 createPom() 方法,或者自行增加 main() 方法再执行:
java -c MakePomFromJars
java MakePomFromJars
将输出到控制台的依赖定义拷贝到 pom.xml,生成第一版 maven 定义
2. 将项目中原来的 lib
文件夹备份(原 jar 共 158 个)并移除;
2. 修补缺失的 pom.xml 依赖 jar
第一版 pom.xml 文件中会有存在 为 not find 并且 存在的定义(大概52个),可以通过查看jar目录结构,从中央仓库找到相应定义。
而 <version>
不存在的定义,有3种方式处理:
-
- 通过中央仓库根据CRC校验码找到相应的定义加入到 pom.xml。
-
- 查找是否有其他包使用过此jar,根据其相应定义加入到 pom.xml。
-
- 以上2种方式不行,则需要和颐讯人员进行沟通,确定jar包的作用,在处理此jar包。
-
- 除此之外,pom.xml 文件中还存在重复引入的依赖和jar版本冲突问题。可以使用 Intellij IDEA 的 Diagrams 处理。
- Intellij IDEA打开项目,在pom.xml中右单击选择
Diagrams->show dependencies
,生产依赖图 - 去除所有红线,即去除所有jar包冲突,通过增加
dependency/exclusions
方式去除。点击一个jar包时会显示和它冲突的所有jar包。
例如:
<dependency>
<groupId>com.hynnet