用java做个图片处理网站过程遇到的坑

很久没主动搭过项目了导致遇到的坑,废了我一个周末网站现在还没搭建起来,下面记录下部署过程的坑。

说下我的本地环境:win11、idea、jdk8暂且没用数据库 前端用的layui也没前后端分离,网站搭建好要过几天了因为我要编译依赖要费点时间。

服务器能用linux还是尽量linux吧,苦笑下

坑一:jar包冲突,没指定主函数

之前我本地跑程序的时候缺少servlet-api.jar我就随手引用了,导出执行jar包执行的时候跟内置的tomcat包冲突。

解决办法:打包的时候排除冲突包,添加主函数配置

坑二:resources资源文件或者java目录加载不到

xml 复制代码
<!-- 定义包含这些资源文件,能在jar包中获取这些文件 -->
<resources>
    <resource>
        <directory>src/main/java</directory>
        <includes>
            <include>**/*.*</include>
        </includes>
        <!--是否替换资源中的属性-->
        <filtering>false</filtering>
    </resource>
    <resource>
        <directory>src/main/resources</directory>
        <includes>
            <include>**/*.*</include>
        </includes>
        <!--是否替换资源中的属性-->
        <filtering>false</filtering>
    </resource>
</resources>

坑三:dll依赖的巨坑

因为我主要依赖win下的dll(linux是so)我在win下写的代码想着部署简单点就选了winserver结果坑了我两天时间缺各种依赖。本想着少事情结果费更多的事情,没办法我又搞起了centos。

因为我是要主动加载dll需要找文件拼接路径处理在jar包里面是个巨坑。

scss 复制代码
InitUtil.class.getClassLoader().getResource("").getPath()
InitUtil.class.getClassLoader().getResource("/).getPath() null
InitUtil.class.getClass().getResource("").getPath() null
InitUtil.class.getClass().getResource("/").getPath()
普通的读取文件操作可以用 getResourceAsStream进行操作

dll之前我是在resources目录中,主动加载的话涉及到一个问题jar包读取文件,后面这个问题我这里暂且选择了在跟程序一个目录下加载了(注意linux下需要调整下)。

txt 复制代码
##windows平台:
.dll : 动态链接库,作为共享函数库的可执行文件.
.obj : 目标文件,相当于源代码对应的二进制文件,未经过重定义.
.lib : 可理解为多个 obj 的集合,本质与 .obj 相同.
##linux平台:
.so:(share object)动态链接库,和windows 的 dll 类似.
.o : 目标文件,相当于源代码对应的二进制文件 类似 windows 下 obj.
.a : 与 .o 类似,多个 .o 的集合 类似 windows 下 lib.

功能

等我把环境搭建起来在打算看添加点什么功能

本来是没打算做的因为python不熟又没太多精力,但是深度学习没python又不行又不会c++,没内容识别模块的话感觉少点什么,最近把java加载模型的问题找到了解决办法,但是很多图片处理的东西又不是单靠加载个模型就可以解决的(例如u2net抠图类的),java先入为主熟悉点吧,用python单独写个工具类还行搞个网站有点吃力还费精力,后面看java搞电有趣合适的图片工具再整合进来。

功能点大概都是之前费了很多业余时间如下门,这里算整合了下做个记录。

相关推荐
.生产的驴1 分钟前
SpringBoot 消息队列RabbitMQ 消费者确认机制 失败重试机制
java·spring boot·分布式·后端·rabbitmq·java-rabbitmq
苹果酱05671 小时前
一文读懂SpringCLoud
java·开发语言·spring boot·后端·中间件
掐指一算乀缺钱1 小时前
SpringBoot 数据库表结构文档生成
java·数据库·spring boot·后端·spring
计算机学姐4 小时前
基于python+django+vue的影视推荐系统
开发语言·vue.js·后端·python·mysql·django·intellij-idea
JustinNeil4 小时前
简化Java对象转换:高效实现大对象的Entity、VO、DTO互转与代码优化
后端
青灯文案14 小时前
SpringBoot 项目统一 API 响应结果封装示例
java·spring boot·后端
微尘85 小时前
C语言存储类型 auto,register,static,extern
服务器·c语言·开发语言·c++·后端
计算机学姐5 小时前
基于PHP的电脑线上销售系统
开发语言·vscode·后端·mysql·编辑器·php·phpstorm
阿乾之铭5 小时前
spring MVC 拦截器
java·spring·mvc
码拉松6 小时前
千万不要错过,优惠券设计与思考初探
后端·面试·架构