工作和学习遇到的技术问题
写在前面
记录工作和学习遇到的技术问题,以求再次遇到可以快速解决。
1:Ubuntu TSL换源报错:Err:1 http://mirrors.aliyun.com/ubuntu focal InRelease
执行如下操作(已经操作的则忽略),首先在文件/etc/apt/sources.list中增加如下内容:
deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiversedeb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiversedeb http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiversedeb http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiversedeb http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
然后在文件/etc/resolv.conf中增加如下内容:
nameserver 8.8.8.8
nameserver 114.114.114.114
最后执行如下命令:
sudo apt-get update
sudo apt-get upgrade
2:idea启动项目提示端口占用
有时候当我们使用Tomcat启动web项目时,会提示端口占用,导致启动失败,可能出现端口冲突的配置如下图:


有时候确实是端口占用,有时候端口实际是并没有占用的,接下来我们一起看下不同情况下该如何处理。
2.1:端口实际被占用
这种情况比较好处理,直接找到占用端口的进程,然后kill就行了,具体可以参考window查找端口占用并杀死进程 。
2.2:端口并没有被占用
首先可以考虑是因为Java程序异常终止,但是进程并没有完全释放导致,此时可以打开资源管理器,找到所有的java.exe,然后强制结束任务,如下图:

如果依然不行,可以考虑是否因为开启了hyper v虚拟化,此时使用的端口段将无法被使用,可以使用命令netsh interface ipv4 show excludedportrange protocol=tcp查看是否为这种情况:

如果是这种情况,修改为不在保留端口范围内的其他端口号即可。
3:启动服务提示端口占用
3.1:首先找到端口进程
这里以端口号1099为例说明。
C:\Users\Administrator>netstat -ano | findstr "1099"TCP 0.0.0.0:1099 0.0.0.0:0 LISTENING 17412TCP [::]:1099 [::]:0 LISTENING 17412
可以看到占用的进程号是17412。
3.2:杀掉进程
这里杀死第一步骤查到的进程号17412。
C:\Users\Administrator>taskkill -PID 17412 -F
成功: 已终止 PID 为 17412 的进程。
4:sudo unable to resolve host test : Name or service not known
这种错误一般是因为我们通过编辑/etc/hostname修改了主机名,但是没有在/etc/hosts配置对应的127.0.0.1 hostname的映射,进行配置即可,如下图:

5:ERR unknown command CONFIG
一般是Redis服务器处于安全考虑禁用了该redis命令,如下注释掉rename-command即可:

生产环境,keys,flushDB,flushAll等耗费大量资源以及会删除大量数据的命令,处于安全考虑一般会进行rename。
6:idea普通模式可以启动但是debug模式无法启动
可能是有断点,将断点全部删除,然后再尝试,应该就没问题了。
7:idea各种乱码(console,maven,tomcat等)
统一u8,如下检查:
7.1:系统设置为u8

7.2:设置idea
File->Setting:

7.3:设置maven
设置<encoding>UTF-8</encoding>后,相当于执行javac -encoding utf-8 xxx.java,即告诉Maven,用u8给我编译源文件。
<build><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><configuration><source>8</source><target>8</target><encoding>UTF-8</encoding></configuration></plugin></plugins></build>
8:Maven 执行命令报错resolution will not be reattempted until the update inter val of public has elapsed or updates are forced
这种错误一般是因为Maven没有更新老的jar包导致(默认一天更新一次),可采用如下两种方式,即命令行更新(建议这种),每次更新(不建议,因为老的jar一般是不动的,每次更新会增加时间消耗):
1:命令行更新
mvn clean install -U2:每次更新
<repositories><repository><id>xr-snapshots</id><url>http://nexus.alibaba.com/repository/snapshots/</url><snapshots><enabled>true</enabled><!-- 注意 -- ><updatePolicy>always</updatePolicy></snapshots><releases><enabled>false</enabled><!-- 注意 -- ><updatePolicy>always</updatePolicy></releases></repository></repositories><pluginRepositories><pluginRepository><id>xr-plugins</id><name>xingren plugins</name><url>http://nexus.alibaba.com/repository/public/</url><releases><enabled>true</enabled><!-- 注意 -- ><updatePolicy>always</updatePolicy></releases><snapshots><enabled>true</enabled><!-- 注意 -- ><updatePolicy>always</updatePolicy></snapshots></pluginRepository>
</pluginRepositories>
9:idea Error:(3, 38) java: 程序包org.springframework.stereotype不存在
按照如下步骤设置:

执行mvn idea:idea:

10:javac编译输出结果乱码
如下乱码:
D:\test>D:\\program_files\\many_version_jdk\\jdk1.8.0_202\\bin\\javac encoding utf-8 GCLogAnalysis.java
javac: Чı: utf-8
÷: javac <options> <source files>
-help гܵѡ
一般指定编译器使用u8编码即可,如下:
D:\test>D:\\program_files\\many_version_jdk\\jdk1.8.0_202\\bin\\javac -encoding utf-8 GCLogAnalysis.java
D:\test>
11:java命令执行乱码
如下:
D:\test>java GCLogAnalysis
ִ...
ִн!ɶ:18523
通过-Dk=v配置编码,如下:
D:\test>java -Dfile.encoding=utf-8 GCLogAnalysis
正在执行...
执行结束!共生成对象次数:18915
12:idea导入项目后没有被识别为maven项目的解决办法
- 1、首先点击工具栏最左边的 Help 再点击 Find Action ;

- 2、接着在输入框中输入 maven projects ,会弹出一个 Add Maven Projects 选项,点击即可,会弹出下图的弹窗

- 3:选择本项目的 pom.xml 点击 OK 即可解决!

点鸡 。
13:idea导入项目后卡在reading pom.xml
如果是项目中有如下的文件:

因为要下载maven-wrapper.properties文件中的内容,而下载太慢导致问题发生,考虑如下方法解决:
1:如果允许,一般直接删除.mvn就行
2:开代理,加速下载速度
14:springboot pom parent被占用了
常规这样配置的:
<parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.2.10.RELEASE</version>
</parent>
如果是因为maven的父子项目导致parent被占用,可以这样子配置:
<dependencyManagement><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-dependencies</artifactId><version>2.2.10.RELEASE</version><type>pom</type><scope>import</scope></dependency></dependencies>
</dependencyManagement>
15:Git解决Filename too long的问题
git config --global core.longpaths true
16:idea plugins搜不到插件
点鸡 。
17:IDEA不编译src/main/java目录下的xml/properties文件的解决办法
默认不编译,在pom中显示指定即可,如下:
<build><resources><!-- 表示编译java源码时,包含src/main/java和src/main/resources目录下的xml、properties一起 --><!--如果mapper.xml在src/main/java目录下,就必须做这个配置,不然编译后会丢弃mapper.xml文件--><resource><directory>src/main/java</directory><includes><include>**/*.xml</include><include>**/*.properties</include></includes></resource><resource><directory>src/main/resources</directory><includes><include>**/*.xml</include><include>**/*.properties</include></includes></resource></resources>
</build>
18:解决github打不开的方法(亲测有效)
解决github打不开的方法(亲测有效) 。
19:intellij idea 启动报错 java.util.concurrent.CompletionException: java.net.BindException: Address already
intellij idea 启动报错java.util.concurrent.CompletionException 。
20:idea导入项目后没有被识别为maven项目的解决办法


参考文章 。
21:idea总是不自动编译
如下步骤检查:




22:Error running ‘form’: Unable to open debugger port (127.0.0.1:30371): java.net.BindException “Address already in use: NET_Bind”

23:parallelStream丢数据问题
程序如下:
// 过滤当前存在自己办理任务的
List<Task> nowTodoTaskList = taskService.createTaskQuery().taskAssignee(taskUserId).list();
Set<String> nowTodoInstanceSet = new HashSet<>();
nowTodoTaskList.parallelStream().forEach(v -> nowTodoInstanceSet.add(v.getProcessInstanceId()));
nowTodoTaskList有n条数据,有时会出现nowTodoTaskList结果小于n的的情况,但大部分时候都是等于n的,怀疑是底层JUC多线程程序有bug,将nowTodoTaskList.parallelStream().forEach...改为nowTodoTaskList.stream().forEach解决问题。
24:Maven导入的项目不显示为模块


25:nacos报错 tried: ErrCode:503, ErrMsg:server is DOWN now, please try again later!

26:安装idea 点击next没反应?
别着急,让子弹再飞一会,点击后不要动等个35分钟就好了!!!
27:idea报错:Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile
一般是jdk版本问题,设置各处版本为8,包括但不限于如下位置:



最后需要在插件中设置版本号为8,如下:
<plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><configuration><source>8</source><target>8</target><encoding>UTF-8</encoding></configuration>
</plugin>
还不行的话,就去仓库里把对应的依赖文件夹删除掉,重新import。一般就行了,其实这也属于因为maven的问题导致找不到依赖而报错,所以,其他的类似下载不着依赖的问题也可以尝试通过这种方法来解决掉。
参考文章 。
idea的Maven配置问题:Cannot resolve plugin org.apache.maven.plugins:maven-clean-plugin:2.5 。
28:telnet不通(防火墙问题)


systemctl status firewalld.service
systemctl stop firewalld.service
systemctl status firewalld.service
systemctl disable firewalld.service
使用vim /etc/sysconfig/selinux,将SELINUX=enforcing改为SELINUX=disabled。
最后重启。
参考 。
29:maven引入成功但找不到依赖(爆红)
首先尝试设置:

不行的话,再尝试:

30:idea pom.xml显示删除线
首先操作如下:

最后,没好的话,重启idea。
31:项目启动总是nacos但实际没有使用
在启动springboot项目时报如下的错误:
2023-12-11 17:10:23.028 ERROR 19472 --- [ main] c.a.c.n.registry.NacosServiceRegistry : nacos registry, coupon-customer-serv register failed...NacosRegistration{nacosDiscoveryProperties=NacosDiscoveryProperties{serverAddr='localhost:8848', endpoint='', namespace='', watchDelay=30000, logName='', service='coupon-customer-serv', weight=1.0, clusterName='DEFAULT', group='DEFAULT_GROUP', namingLoadCacheAtStart='false', metadata={preserved.register.source=SPRING_CLOUD}, registerEnabled=true, ip='192.168.10.47', networkInterface='', port=20003, secure=false, accessKey='', secretKey='', heartBeatInterval=null, heartBeatTimeout=null, ipDeleteTimeout=null}},
但实际上在项目中是没有使用nacos的,pom:

执行命令mvn dependency:tree查看依赖树也确实没有nacos的起步依赖,如下:

但,凡事有个但,但在idea中确实显示有nacos依赖。


通过上面查看代码配置和依赖树可以确定是idea自己的问题可能是缓存之类的问题吧,所以执行reimport,重新导入maven项目和依赖就行了,如下:

再看:

32:IDEA报错:Project ‘org.springframework.boot:spring-boot-starter-parent:2.3.6.RELEASE‘ not found
一般是由于idea缓存造成,invalidate cache并重启即可。

33:maven 打包问题(repackage failed: Unable to find main class)
这是因为maven打包的时候会默认去找main函数,而有时我们只是提供一些规范性的jar包,本来就不需要使用main函数,这个时候对这种项目或者是模块打包就会有这种错误,处理方法是显式的配置maven-plugin不让它去找main:

红框中的内容。
maven 打包问题(repackage failed: Unable to find main class) 。
34:每次新建的maven项目都要重新设置maven
只需要设置新建项目时的设置信息就行,如下:


35:Fatal error compiling: 无效的标记: --release -> [Help 1]
一般是jdk版本原因,检查如下的位置们:



也可能是pom文件中设置了jdk的版本,也可以检查下。当然每一步操作你都要先clean下再尝试是否解决问题。
参考文章列表
Git解决Filename too long的问题 。
相关文章:
工作和学习遇到的技术问题
写在前面 记录工作和学习遇到的技术问题,以求再次遇到可以快速解决。 1:Ubuntu TSL换源报错:Err:1 http://mirrors.aliyun.com/ubuntu focal InRelease 执行如下操作(已经操作的则忽略),首先在文件/etc/apt/sources…...
如何解决JAVA程序通过obloader并发导数导致系统夯住的问题 | OceanBase 运维实践
案例背景 某保险机构客户的数据中台,自系统上线后不久,会定期的用 obload 工具从上游业务系统导入数据至OceanBase数据库。但,不久便遇到了应用服务器的 Memory 与 CPU 资源占用持续攀升,最终导致系统夯住而不可用的异常。 memo…...
Git零基础到入门
一、开始工作区 clone: 克隆一个仓库到新的目录。 git clone https://github.com/username/repository.git init: 创建一个新的空 Git 仓库或重新初始化现有的仓库,新建git项目。 //创建项目两种方式 //一、本地项目自己创建项目,先创建好工作文件夹,通…...
HTTP 1.0、HTTP 1.1 和 HTTP 2.0 区别
HTTP 1.0、HTTP 1.1 和 HTTP 2.0 是超文本传输协议(HTTP)不同版本的规范,各自进行了多项更新和改进: 1. HTTP/1.0 单一请求-响应:每次请求都需要建立一个新的 TCP 连接,完成后立即断开。无状态连接&#…...
解决 ElSelect 数据量大导致加载速度慢
遇到一个性能相关的问题,使用 Element Plus 的 <ElSelect> 组件在数据量很大时,加载速度变慢。 下面简单分析下原因,并提供了一些解决方法。 1. 问题分析 1、大量 DOM 节点渲染 问题:当数据量非常大时,每一个…...
在 CentOS 系统中,您可以使用多种工具来查看网络速度和流量
在 CentOS 系统中,您可以使用多种工具来查看网络速度和流量 在 CentOS 系统中,您可以使用多种工具来查看网络速度和流量1. 使用 iftop安装 iftop使用 iftop 2. 使用 nload安装 nload使用 nload 3. 使用 vnstat安装 vnstat初始化 vnstat查看流量 4. 使用 …...
分布式----Ceph部署
目录 一、存储基础 1.1 单机存储设备 1.2 单机存储的问题 1.3 商业存储解决方案 1.4 分布式存储(软件定义的存储 SDS) 1.5 分布式存储的类型 二、Ceph 简介 三、Ceph 优势 四、Ceph 架构 五、Ceph 核心组件 #Pool中数据保存方式支持两种类型&…...
使用 PyTorch 实现 AlexNet 进行 MNIST 图像分类
AlexNet 是一种经典的深度学习模型,它在 2012 年的 ImageNet 图像分类比赛中大放异彩,彻底改变了计算机视觉领域的格局。AlexNet 的核心创新包括使用深度卷积神经网络(CNN)来处理图像,并采用了多个先进的技术如 ReLU 激…...
Python爬虫项目 | 一、网易云音乐热歌榜歌曲
文章目录 1.文章概要1.1 实现方法1.2 实现代码1.3 最终效果 2.具体讲解2.1 使用的Python库2.2 代码说明2.2.1 创建目录保存文件2.2.2 爬取网易云音乐热歌榜单歌曲 2.3 过程展示 3 总结 1.文章概要 学习Python爬虫知识,实现简单的一个小案例,网易云音乐热…...
【Linux】HTTP协议和HTTPS加密
文章目录 HTTP1、概念2、认识URL3、协议格式、请求方法和状态码4、HTTP请求和响应报头5、Cookie和Session HTTPS1、对称和非对称加密2、对称非对称加密安全分析3、证书 HTTP 1、概念 我们在应用层定制协议时,不建议直接发送结构体对象,因为在不同的环境…...
Linux编辑/etc/fstab文件不当,不使用快照;进入救援模式
目录 红帽镜像9救援模式 现象 解决 第一步:修改启动参数以进入救援模式 第二步:进入救援模式、获取root权限、编辑/etc/fstab文件 第三步:编辑好后在重启 下面是ai给的模板 红帽镜像9救援模式 编辑/etc/fstab不当时 17 /dev/nvme0n3p1…...
ubuntu升级postgres
已经有了postgres12,记录一下升级从postgres12升级到15的过程及遇到的一些问题,我没有备份,单纯升级 1、升级过程 深色版本 sudo systemctl stop postgresql 升级PostgreSQL 停止PostgreSQL服务: 停止当前版本的PostgreSQL服务…...
vue2在el-dialog打开的时候使该el-dialog中的某个输入框获得焦点方法总结
在 Vue 2 中,如果你想通过 ref 调用一个方法(如 inputFocus)来聚焦一个输入框,确保以下几点: 确保 ref 的设置正确:你需要确保在模板中正确设置了 ref,并且它指向了你想要操作的组件或 DOM 元素…...
SpringBoot(十七)创建多模块Springboot项目
在gitee上查找资料的时候,发现有不少Springboot项目里边都是嵌套了多个Springboot项目的。这个玩意好,在协作开发的时候,将项目分成多个模块,有多个团队协作开发,模块间定义标准化通信接口进行数据交互即可。 这个好这个。我之前创建的博客项目是单模块的SpringBoot项目,…...
Vue.js 高质量翻页功能的完整开发指南
文章目录 Vue.js 翻页组件的完整开发与优化指南前言分析分页需求与设计要点基础分页功能的实现分页逻辑 优化分页:封装为组件化设计组件化代码 提升用户体验与性能动态调整每页显示的条目数优化移动端与桌面端的展示高性能翻页策略:按需加载与懒加载提示…...
android dvr黑屏
问题现象:dvr拍摄的图片是黑的,没有buffer数据的。 查看相关的log文件发现: video surface 未释放导致 祥见一下报错信息: 38298 2024-10-16 01:02:51.855 4056 32068 W MediaCodecRenderer: java.lang.IllegalStateExcepti…...
css文字间距撑满横向距离
效果: 代码: 、 text-align:justify;text-align-last: justify;...
【Unity基础】对比OnCollisionEnter与OnTriggerEnter
在Unity中,OnCollisionEnter 和 OnTriggerEnter 是两种用于处理碰撞的回调函数,但它们的工作方式和使用场景有所不同: 1. OnCollisionEnter 触发条件:当一个带有 Collider 组件并且**未勾选“Is Trigger”**的物体,与…...
算法训练(leetcode)二刷第二十五天 | *134. 加油站、*135. 分发糖果、860. 柠檬水找零、*406. 根据身高重建队列
刷题记录 *134. 加油站*135. 分发糖果860. 柠檬水找零*406. 根据身高重建队列 *134. 加油站 leetcode题目地址 当前站点可以剩余油量gas[i] - cost[i]; 将每站的剩余油量求和计算累计剩余油量,总剩余油量小于0,则无法行驶一周。 若在到达某一站时累计剩…...
Springboot 整合 itext 实现PDF文件合并,识别图片则转成PDF拼接
目录 前言一、引用依赖二、使用步骤1.Controller2.Service接口3.实现类三、请求接口及结果前言 本文实现 Springboot 整合 itext 实现PDF文件合并,图片转PDF拼接。 一、引用依赖 <dependency><groupId>com.itextpdf</groupId><artifactId>itext7-co…...
golang循环变量捕获问题
在 Go 语言中,当在循环中启动协程(goroutine)时,如果在协程闭包中直接引用循环变量,可能会遇到一个常见的陷阱 - 循环变量捕获问题。让我详细解释一下: 问题背景 看这个代码片段: fo…...
为什么需要建设工程项目管理?工程项目管理有哪些亮点功能?
在建筑行业,项目管理的重要性不言而喻。随着工程规模的扩大、技术复杂度的提升,传统的管理模式已经难以满足现代工程的需求。过去,许多企业依赖手工记录、口头沟通和分散的信息管理,导致效率低下、成本失控、风险频发。例如&#…...
2021-03-15 iview一些问题
1.iview 在使用tree组件时,发现没有set类的方法,只有get,那么要改变tree值,只能遍历treeData,递归修改treeData的checked,发现无法更改,原因在于check模式下,子元素的勾选状态跟父节…...
【RockeMQ】第2节|RocketMQ快速实战以及核⼼概念详解(二)
升级Dledger高可用集群 一、主从架构的不足与Dledger的定位 主从架构缺陷 数据备份依赖Slave节点,但无自动故障转移能力,Master宕机后需人工切换,期间消息可能无法读取。Slave仅存储数据,无法主动升级为Master响应请求ÿ…...
【学习笔记】深入理解Java虚拟机学习笔记——第4章 虚拟机性能监控,故障处理工具
第2章 虚拟机性能监控,故障处理工具 4.1 概述 略 4.2 基础故障处理工具 4.2.1 jps:虚拟机进程状况工具 命令:jps [options] [hostid] 功能:本地虚拟机进程显示进程ID(与ps相同),可同时显示主类&#x…...
听写流程自动化实践,轻量级教育辅助
随着智能教育工具的发展,越来越多的传统学习方式正在被数字化、自动化所优化。听写作为语文、英语等学科中重要的基础训练形式,也迎来了更高效的解决方案。 这是一款轻量但功能强大的听写辅助工具。它是基于本地词库与可选在线语音引擎构建,…...
现有的 Redis 分布式锁库(如 Redisson)提供了哪些便利?
现有的 Redis 分布式锁库(如 Redisson)相比于开发者自己基于 Redis 命令(如 SETNX, EXPIRE, DEL)手动实现分布式锁,提供了巨大的便利性和健壮性。主要体现在以下几个方面: 原子性保证 (Atomicity)ÿ…...
CRMEB 中 PHP 短信扩展开发:涵盖一号通、阿里云、腾讯云、创蓝
目前已有一号通短信、阿里云短信、腾讯云短信扩展 扩展入口文件 文件目录 crmeb\services\sms\Sms.php 默认驱动类型为:一号通 namespace crmeb\services\sms;use crmeb\basic\BaseManager; use crmeb\services\AccessTokenServeService; use crmeb\services\sms\…...
c++第七天 继承与派生2
这一篇文章主要内容是 派生类构造函数与析构函数 在派生类中重写基类成员 以及多继承 第一部分:派生类构造函数与析构函数 当创建一个派生类对象时,基类成员是如何初始化的? 1.当派生类对象创建的时候,基类成员的初始化顺序 …...
android RelativeLayout布局
<?xml version"1.0" encoding"utf-8"?> <RelativeLayout xmlns:android"http://schemas.android.com/apk/res/android"android:layout_width"match_parent"android:layout_height"match_parent"android:gravity&…...
