自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(70)
  • 资源 (1)
  • 问答 (2)
  • 收藏
  • 关注

原创 idea2020.2卡死在reading maven projects

idea2020.2创建springboot项目打开卡死在reading maven projects;解决方法:移除工程目录/.mvn/maven-wrapper.properties 文件即可参考地址

2020-11-26 14:46:04 8912 24

原创 FunctionalInterface注解的类中有多个未实现的方法

背景今天看面试题:Comparable和Comparator接口的区别,点进Comparator接口看了一下,发现在JDK8中此类加了很多方法,并且使用了@FuncitonnalInterface注解,对此有个疑问——为毛使用了函数式接口的注解,还能有多个方法没有实现?函数式接口不是只允许一个未实现方法吗?原因StackOverflowIf an interface declares an abstract method overriding one of the public methods o

2021-01-21 16:05:36 3

原创 java类加载知识点考察

以下结果输出和static字段以及代码块的先后顺序有关,可参考《深入理解java虚拟机》类加载的初始化一节public class StaticTest { private static StaticTest s2 = new StaticTest(); static { System.out.println("static 代码快"); } private static StaticTest s1 = new StaticTest(); {

2021-01-20 20:55:21 9

原创 KDE桌面动画效果失效

manjaro-kde更新后,动画效果失效docker栏显示很奇怪,并且没有动画效果,而正常的是下边这样解决方法系统设置——硬件——显卡与显示器——混成器,勾选启东市开启混成,然后注销重新登录即可...

2021-01-20 18:59:53 4

原创 查看java虚拟机默认的垃圾收集器

今天看周志明老师的《深入理解java虚拟机》第三版,看到垃圾回收器这一章,想查看不做任何设置的情况下JVM默认的老年代和新生代的收集器分别是啥,这里还是挺绕的。测试环境Linux 5.10 + java8虚拟机中垃圾回收器的组合查看默认收集器$ java -XX:+PrintCommandLineFlags -version-XX:InitialHeapSize=252872576 -XX:MaxHeapSize=4045961216 -XX:+PrintCommandLineFlags -X

2021-01-19 19:30:01 12

原创 jdk自带visualvm调试工具

问题1 visualvm安装插件超时因我用的manjaro系统,使用pacman安装的是openjdk,在jdk的bin目录没有visualvm调试工具,所以在官网下载的visualvm,但是此软件不带gc插件,在tools-

2021-01-19 14:12:12 7

原创 jvm栈深度

什么是栈深度每个jvm虚拟机的内存大小都是有限的,jvm虚拟机主要包括堆、虚拟机栈、本地(native)方法栈、程序计数器、方法区……此处说的栈指的是虚拟机栈。这个虚拟机栈的大小是 有限的,如果在同一个时刻执行很多方法(用极限的思想,假设有接近无穷个函数在同一个时间点执行),那所需要的内存是巨大的,超过了栈内存大小,就抛出栈溢出(StackOverflow)异常。栈深度可以通过函数调用自身,同时记录调用的次数,来计算,这个次数指的是当程序StackOverflow时的大小。demopublic cl

2021-01-18 20:14:46 5

转载 Manjaro安装mysql遇到问题

问题manjaro系统更新后,mysql也一起更新,然后无法访问了。查看mysql进程没了,执行sudo systemctl start mysqld.service 启动失败。重新安装也不管用解决方法初始化报错日志如下。mysqld --initialize --user=mysql --basedir=/usr --datadir=/var/lib/mysqlmysqld: error while loading shared libraries: libicuuc.so.65: can

2021-01-18 11:47:15 15

原创 Manjaro下可视化的v2ray软件

doc地址QV2rayQv2ray提供了多种linux系统的安装包,文档齐全,值得推荐!在manjaro下安装非常简单,只需要在软件管理工具中搜索就可以了。

2021-01-18 10:48:41 46

原创 java中栈的实现

先说结论java中的栈官方推荐使用Deque(发音:呆克,不是迪克哈哈)类图查看用idea打开Deque接口,发现483行有栈的两个经典方法push,pop。并且注明了是Stack methods左侧有个标有绿色的大写I的图片,点开可以查看它的所有实现类可以看到上图中有我们熟悉的LinkedList,所以如果我们想使用栈这种数据结构,只需要使用LinkedList就可以了,切记使用多态时要用Deque类型接收Deque stack = new LinkedList();一开始是刷leec

2021-01-14 10:14:49 12

原创 jenkins中使用ssh执行错误时,自动把任务fail并且标红

场景使用Jenkins自动部署,因为Jenkins部署在公司内网,而代码在云服务器,部署前端代码采用的是ssh跳转到云服务器然后git checkout xxxx,git pull ,npm run build ……,最近遇到个问题,是假如git checkout失败,那需要把Jenkins流水线标红,但Jenkins默认显示的是unstable,是黄颜色的,如下:下载我想让ssh有命令执行失败时,直接显示红色的失败状态:答案在SSH Publishers中合适的位置设置exit 1,exit

2021-01-13 11:02:25 16

原创 webrtc音频流的融合

背景用webrtc做了个录屏功能,但是领导要求,录屏要有声音,不仅包含本地麦克风还要能录制会议中其他人的声音。音频流融合,核心代码说明:我是在peerconnection的时候,监听ontrack事件,在事件的回调函数中获取远端的音频track,然后放入一个map对象,key为用户id,value为音频的track对象。第一行navigator.mediaDevices.getUserMedia({audio: true})是为了获取本地音频流,当然你可以也把他加入到map对象,统一到foreach

2021-01-08 17:56:49 9

原创 Ubuntu使用VNC卡顿问题

现象我用的Linux Mint系统,属于Ubuntu系,因为个人喜欢KDE桌面,所以安装好系统后又按了一个KDE环境。使用默认的Can桌面vnc连接是没有问题,但是使用KDE时,如果你没有接显示器,是非常卡,接入显示器会发现马上不卡了。解决参考遗留问题这种方法的分辨率最大支持13660x768,我的显示屏是1920*1080的,无法做到最佳显示。,...

2021-01-06 11:15:40 65

原创 Ubuntu系Linux定时任务

背景最近公司天天统计谁下班不关机,被抓住就罚钱,甚是恶心,于是就在我的Linux mint整个定时任务,每天23点禁用网卡,早晨7点开启。因为他们统计的方式无非就是在某个时间点去ping 你的ip,禁用网卡我看你怎么ping。开整crontab分为普通权限和root权限,就是说如果你的定时任务需要su权限,那你可以这样:sudo crontab -e #该命令下编辑,脚本会自动用su去执行### 定时任务0 23 * * * ifconfig enp2s0 down##每天七点开启网卡0 7

2021-01-06 10:42:33 9

原创 给debian系的Linux系统设置apt代理

测试环境Linuxmint 20方法在/etc/apt/apt.conf.d路径新建一个apt_proxy.conf,只要是以conf结尾就行,内容如下Acquire::http::Proxy "http://192.168.2.250:3128";Acquire::https::Proxy "http://192.168.2.250:3128";记得把代理服务器换成自己的...

2021-01-06 09:25:11 24

原创 Ubuntu系的Linux使用vnc报错

报错内容按照网上教程安装tigervncserver,然后运行vncserver,报错如下:$ vncserverYou will require a password to access your desktops.Password:Verify:Would you like to enter a view-only password (y/n)? yPassword:Verify:New 'chenkun-mint:1 (chenkun)' desktop at :1 on ma

2021-01-05 15:33:02 45

转载 Ubuntu系linux系统硬盘安装

适用于没有U盘等其他存储介质的场景参考

2021-01-04 14:54:59 6

原创 Linux命令

查找后执行某个命令# 查找/路径下的所有java文件并删除find / -name "*.java" | xargs rm -rf# 查找文件内容,并替换,把/下所有文件中包含内容aaaa的都替换为bbbbfind / -name '*' | xargs perl -pi -e 's|aaaa|bbbb|g'...

2021-01-04 11:54:45 5

转载 Manjaro多版本jdk切换

JDK 安装安装oracle jdk sudo pacman -S jdk安装openjdksudo pacman -S jdk8-openjdk安装多个JDK时我这里先安装的 jdk8-openjdk,后安装 jdk12安装 jdk12时提示:Default Java environment is already set to 'java-8-openjdk'See 'archlinux-java help' to change it.When you use a non-reparent

2020-12-28 21:03:03 54

原创 vue-router中的replace和push

官方说明vue的官方对路由的replace说明如下,但是看完表示并不理解,在实际项目中需要路由跳转的基本一律 用的push方法,今天特意做了一下实验验证replace到底和push的区别在哪里举例说明假设现在有有用户后台管理系统,有三个页面,登录页、列表页、详情页,逻辑如下:首先进入登录页,路由地址:http://localhost:8888#/login (假设路由名字叫login)登录成功,跳转到用户列表页面http://localhost:8888#/list (假设路由名字叫list)

2020-12-25 15:16:18 16

转载 JS 学习

1、require语法引用廖雪峰require教程当 Node 遇到 require(X) 时,按下面的顺序处理。(1)如果 X 是内置模块(比如 require(‘http’))  a. 返回该模块。  b. 不再继续执行。(2)如果 X 以 “./” 或者 “/” 或者 “…/” 开头  a. 根据 X 所在的父模块,确定 X 的绝对路径。  b. 将 X 当成文件,依次查找下面文件,只要其中有一个存在,就返回该文件,不再继续执行。XX.jsX.jsonX.node  c. 将

2020-12-24 09:21:49 4

翻译 java11使用JPA连接mysql问题

报错INFO: HHH000397: Using ASTQueryTranslatorFactory%%%% Error Creating SessionFactory %%%% org.hibernate.MappingException: Could not get constructor for org.hibernate.persister.entity.SingleTableEntityPersister at org.hibernate.persister.internal.Per

2020-12-20 17:37:12 12

原创 WebRTC桌面共享手动停止

背景用webrtc分享桌面,或者录制屏幕时会弹出一个悬浮窗口,如下图所示:有时用户会无意间点击停止共享,那么需要我们做相应的监听事件。处理webrtcc提供了一个track的结束事件 navigator.mediaDevices.getDisplayMedia().then(stream => { //监听手动点击“停止分享” stream.getVideoTracks()[0].onended = ()=>{ //监听以后的处理逻辑……

2020-12-18 12:00:16 37

原创 Manjaro 无法提交处理 (无效或已损坏的软件包)

1.首先更新一下密钥,如果没有安装archlinux-keyring,请及时安装sudo pacman-key --refresh-keys2.重新加载相应的签名密钥sudo pacman-key --initsudo pacman-key --populate3。清除pacman 的缓冲文件sudo pacman -Scc4.更新或者安装系统即可sudo pacman -Syu...

2020-12-16 09:41:04 39

原创 Manjaro双网卡网速很慢

背景带自己的笔记本到公司,同时上内外网,内网插的网线连接192.168.x.x,网关192.168.93.1,DNS解析服务器为:192.168.1.8;外网用的是华为的5GWiFi 盒子,网段也是192.168.x.x,网关192.168.222.1。最近发现访问外网比如www.baidu.com很慢,但是还是能访问。排查直接把网线拔掉,目的就是测试只用WiFi上外网,看看是否还是这么慢,结果发现只用外网,访问百度网速快了好多。插上网线,设置好内外网同时上网的路由,nslookup www.ba

2020-12-14 18:04:29 52

原创 Manjaro设置开机以root权限运行自定义脚本

背景前段时间把笔记本搞成双网卡,同时上内外网,每次开机都要手动设置路由,十分不方便,所以就考虑开机自动设置,但是设置route需要su权限,所以记录一下实现方法# sudo pacman -Sy systemd-rc-local# sudo systemctl enable rc-local.service#sudo touch /etc/rc.local#sudo chmod 755 /etc/rc.local#另外创建一个自定义脚本SetNetwork.sh,把他放到rc.local,

2020-12-10 18:37:57 128 1

原创 前端项目无法安装node saas,下载慢的问题

解决方法参考github方法一:使用淘宝镜像macOS 系统直接运行下面的命令即可:SASS_BINARY_SITE=https://npm.taobao.org/mirrors/node-sass/ npm install node-sass我们一般更希望能跨平台、并且直接使用 npm install 安装所有依赖,所以我的做法是在项目内添加一个 .npmrc 文件:sass_binary_site=https://npm.taobao.org/mirrors/node-sass/phant

2020-12-08 14:09:24 10

原创 Manjaro 关闭开机自动恢复软件

问题使用Manjaro+KDE桌面,会有个自动恢复桌面的默认功能,每次开机都恢复一大堆,浏览器、终端、编辑器……对强迫症用户来首很不习惯。解决方法设置——开机和关机——桌面会话,选择以空会话启动...

2020-12-08 09:33:48 27

原创 前端vue项目再linux下启动报错

报错Error from chokidar (/home/chenkun/.cache/lib/node_modules/@vue/cli-service-global/node_modules/webpack/hot): Error: ENOSPC: System limit for number of file watchers reached, watch '/home/chenkun/.cache/lib/node_modules/@vue/cli-service-global/node_modu

2020-12-07 17:34:20 41

原创 前后端完全分离项目的OAUTH2.0

OAUTH2.0 业务需求因业务需求,需要把两个不相干的系统帐号打通,要求A系统的帐号能登录B系统。从网上找的教程都千篇一律,廖雪峰老师的讲的算是比较透彻,不过没有提怎么实现前后端分离的项目。网上的教程都是前后端放一起,后端在oauth流程结束后很容易把token以及获取到的三方帐号给到前端,然后对于完全前后端分离的项目来说,前后端都是独立的服务,存在跨域,前端如果不主动请求后端,那么后端拿到的oauth信息是无法给到前端了。解决方法最后通过强大的谷歌找到了方法,参考的OAUTH2.0前后分离,最终用

2020-12-03 14:59:53 78

原创 vue命令找不到

1、在linux下安最新的vuecli脚手架,安装完后vue --version居然报错,找不到命令。解决方法:注意查看安装日志,日志里面有你的vue路径,实际上最终执行的是一个vue.js,安装是自动创建了一个vue的软链接到vue.js。现在找不到vue说明存放软链接的路径,没有被加入PATH,手动加入一下就行了。我安装的有zsh,所以我直接在~/.zshrc添加,...

2020-12-02 17:02:47 73

原创 github免密码clone、push操作

把自己的公钥复制到github设置页面git 的操作要使用ssh的方式,不能使用https

2020-12-02 15:17:18 17

原创 Linux免密登录到另一个linux系统

1、本地执行:ssh-keygen -t rsa,将会生成公钥和私钥文件id_rsa和id_rsa.pub【如果一直回车下去,最后这两个文件应该在/home/$USER/.ssh下面】2、将 .pub 文件复制到ServerB机器的 .ssh 目录下,并保存为authorized_keys,如果原来已有该文件,则追加.pub里面的密文到authorized_keys可以使用:ssh-cop-id命令会将指定的公钥文件复制到远程计算机ssh-copy-id -i ~/.ssh/id_rsa.pub

2020-11-28 19:49:08 14

原创 linux下域名解析查看

查看本域名被哪个DNS解析背景:电脑有两个网卡,在公司同时使用双玩卡,用内外网,但是最近解析github域名老有问题,浏览器可以访问,但使用idea得git插件下载不下来项目,在终端ping发现不通。nslookup命令可以查看指定得域名是被哪个DNS服务器解析,以及解析出来得IP地址。终端输入nslookup,如下:$ nslookup> ### 再输入域名github.com $ nslookup> github.comServer: 114.114.114

2020-11-26 17:27:34 41

原创 国内下载安装electron卡在install.js

网上找了很多方法,都尝试过,但是对我没有用。修改镜像地址为淘宝,这个方法不用说,即使不安electron也要改为国内镜像,--------该方法不好使把ELECTRON_MIRROR单独修改成淘宝镜像,也不好使手动下载zip包,但是网上提供得基本都是过时得解决方法还是要手动下载,下载地址https://npm.taobao.org/mirrors/electron/ 选择你自己得版本,在控制台看提示,找到你要下载得那个包,比如下图我得是下载electron-v10.1.6-linux-x64.

2020-11-24 17:38:17 95

原创 electron桌面应用添加更新日志

electron添加releasenote开发玩桌面应用后,每次发布热更新,用户下载完更新包后应该还有个更新说明文件,让用户知道本次更新了些什么内容。实现过程每次打包玩electron应用后,在打包得目录有个自动生成得latest.yml文件,默认得内容如下version: 2.0.5files: - url: XXX-2.0.5.exe sha512: yU00sHEpUVH1cOCBmwrwpYCkY75cXy16JG0N8wlIaa1nMykAY4frVkNMsSsPuyK/

2020-11-23 12:05:11 92 2

原创 nginx配置

同一个nginx可以配置两个相同得端口,如果server_name和端口都一样,则启动后nginx会提示重复,如果server_name不同则就没啥问题。这种适合一个服务器绑定了多个域名,这样每个域名都可以使用80端口以及443端口。实例如下,我 配置了两个8888端口,然后把html文件复制两份,里面的内容改一下,分别访问页面:server { listen 8888; server_name chenkun-pc; #charset.

2020-11-21 17:43:03 4

原创 git reset学习

1、 git reset xx [file](等于git reset --mix ,mix可省略)还原版本,移动HEAD到指定得位置,比如有A-B-C(HEAD)分支,现在在C提交,如果执行git reset B,则代表把HEAD移动到B,同时如果用git status命令查看,会发现之前提交到C得东西都变成了未提交状态,并且还未add到暂存区。使用场景:比如我提交后,发现某个代码写的有问题,此时commit在C ,那么我可以使用git reset B ,然后我之前修改得东西都还在,并且处于未add

2020-11-21 15:24:24 8

原创 JetBrains系列软件中使用git

1、使用git命令行git rm --cached xxx2、使用图形界面选中要移除git版本管控得文件,Ctrl + Alt + Z,在idea中叫做rollback,这个名字和快捷键很有误导

2020-11-21 13:45:54 51

原创 webrtc不对等流建立连接

背景:最近做5人左右的视频功能,用的webrtc,类似群视频聊天功能,群里面有个群主,群主(假设叫群主A,其他分别叫B、C)需要共享摄像头、一路采集卡水平、一路桌面分享,共3路视频流。而其他参与者只有一个摄像头,这就造成了A和B、C之间的流不对等,B、C之间是对等的。问题:视频流不对等会有什么问题呢?假如建立一个群,由B先进入,B再分别和后进入的A、C建立连接(典型的mesh架构,即两两连接),建立连接后B再给A、C发送offer,用来创建SDP文件,因为B只有一个摄像头,所以B提供的

2020-11-20 14:10:58 9

photoshop教程

适合刚学习不久的新手学习,包含个人实践中的经验总结。

2013-01-12

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

提示
确定要删除当前文章?
取消 删除