文章于 25天前更新,请放心阅读! 本文一共351个字,阅读完预计需要 0分钟36秒

无用的废话

今天学习Servlet上传文件发现Tomcat新版本api改变导致使用部分jar找不到"javax.servlet.http.httpservletrequest"类,然后看了下commons-fileupload-1.4这个包引用的还是"javax.servlet.http.httpservletrequest",但现在Tomcat10.x版本已经改为"jakarta.servlet.xxxx",要么现在降低Tomcat版本,要么修改commons-fileupload-1.4引入的类,我选择了后者。改了半天发现太费劲了,于是搜索发现官方出了一个工具用来迁移老版本Java EE 8编写的Web应用程序,转换为现在的Java EE 9,让老的项目可以运行在新的Tomcat版本上,感觉就是修改了api。

项目github地址:apache/tomcat-jakartaee-migration: Apache Tomcat migration tool for Jakarta EE (github.com)

apache地址:Apache Tomcat® - Apache Tomcat Migration Tool for Jakarta EE Software Downloads

说明文档:tomcat-jakartaee-migration/README.md at main · apache/tomcat-jakartaee-migration (github.com)

转换步骤

下载Jar包

可以直接在Apache下载压缩包点这儿 ,解压。进入lib目录下命令行打开

转换命令

jakartaee-migration-version.jar:version版本号

source:转换项目(war包jar)的目录,包含文件名

destination:转换项目(war包jar)过后的目录,包含文件名

java -jar jakartaee-migration-version.jar <source> <destination>

转换的jar包commons-fileupload-1.4