旧Web项目重构(一)_集成maven
为什么集成maven,旧项目集成maven过程
使用pom文件就可以管理相关依赖的版本,方便jar包升级。如果依赖冲突,idea等软件可以查看依赖关系,方便排查相关问题。
集成maven过程:
1、添加pom文件
2、添加maven相关依赖
3、修改目录结构
1、添加pom文件
<?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.zhang</groupId>
<artifactId>test</artifactId>
<version>1.0-SNAPSHOT</version>
</project>
设置自己项目的信息。然后让idea自动搜索pom.xml.
等待加载,加载完成后如下图所示
2、添加maven相关依赖
添加插件等信息比较简单,就是添加依赖比较繁琐,特别是如果是WEB-INF下面的lib中jar包比较多,更难处理。我编写了第一版简单的工具类,能够解决70%多的依赖。剩下的就需要我们手动处理一下。工具类核心是调用阿里的仓库服务api.
链接: https://maven.aliyun.com/mvn/search.
import cn.hutool.http.HttpRequest;
import cn.hutool.http.HttpUtil;
import com.alibaba.fastjson.JSONObject;
import java.io.File;
import java.util.ArrayList;
import java.util.List;
/**
* @author zhangnan
* @date 2019/11/11 14:19
*/
public class test {
private static final String url = "https://maven.aliyun.com/artifact/aliyunMaven/searchArtifactByGav?_input_charset=utf-8&groupId=&repoId=all&artifactId={artifactId}&version={version}";
private static final String dir = "D:\\workspace\\xxxx\\web\\WEB-INF\\lib";
public static void main(String[] args) {
List<String> dependencies =