Node.js如何执行cmd

最近正好因业务的一个需求需要研究如何根据vscode的插件名来下载对应的插件以解决之前将插件打包上传到服务器上面导致的延迟问题(插件体积小还好说,如果体积过大,即便是压缩打成zip包,如果同一时刻很多人上传或下载,系统延迟将会非常严重)。
之前一直想不明白,找半天找不到要给URL可以下载,最后不经意间有了灵感转变一下思路搞定了。灵感是一个好东西。
本文主要讲Node.js如何执行cmd,应用场景除了我开头说的,其实还有很多,只有想不到,没有做不到。正如我们经理说的,现在基本上20%的技术可以解决80%的业务问题,这个时代,技术有点泛滥,换言之,技术产能过剩。

springfox-swagger之swagger-bootstrap-ui

swagger-bootstrap-ui是国内的一个swagger开源项目,从发起到现在已经有三年了。
初次体验了一下,觉得还是挺不错的,就如当初使用mybatis-plus那样,因为有了mybatis的基础,所以过渡到mybatis-plus很没有压力。
现在由swagger2到swagger-bootstrap-ui也是没有压力的,基本上参考官方文档就能弄好了。

hexo 报错 Cannot read property 'replace' of null

详细错误信息:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
FATAL Cannot read property 'replace' of null
TypeError: Cannot read property 'replace' of null
at fs.exists.then.then.then.config (E:\Hexo\node_modules\hexo\lib\hexo\load_config.js:34:31)
at tryCatcher (E:\Hexo\node_modules\bluebird\js\release\util.js:16:23)
at Promise._settlePromiseFromHandler (E:\Hexo\node_modules\bluebird\js\release\promise.js:512:31)
at Promise._settlePromise (E:\Hexo\node_modules\bluebird\js\release\promise.js:569:18)
at Promise._settlePromise0 (E:\Hexo\node_modules\bluebird\js\release\promise.js:614:10)
at Promise._settlePromises (E:\Hexo\node_modules\bluebird\js\release\promise.js:694:18)
at _drainQueueStep (E:\Hexo\node_modules\bluebird\js\release\async.js:138:12)
at _drainQueue (E:\Hexo\node_modules\bluebird\js\release\async.js:131:9)
at Async._drainQueues (E:\Hexo\node_modules\bluebird\js\release\async.js:147:5)
at Immediate.Async.drainQueues (E:\Hexo\node_modules\bluebird\js\release\async.js:17:14)
at runCallback (timers.js:810:20)
at tryOnImmediate (timers.js:768:5)
at processImmediate [as _immediateCallback] (timers.js:745:5)

关键信息: Cannot read property ‘replace’ of null

问题原因:
我为了将我的wiki链接到hexo修改了root路径,如下图所示:

解决办法(将root改为原来的/即可解决这个问题):

这个/相当于默认指向developers-youcong.github.io

参考解决办法:
hexo 报错 Cannot read property ‘replace’ of null

ftp配置详解

FTP配置详解

FTP配置文件位置/etc/vsftpd.conf
listen=NO
设置为YES时vsftpd以独立运行方式启动,设置为NO时以xinetd方式启动(xinetd是管理守护进程的,将服务集中管理,可以减少大量服务的资源消耗)
listen_ipv6=YES
以上两个只能一个YES一个NO否则会出错
listen_port=port
设置控制连接的监听端口号,默认为21
listen_address=ip_address
将在绑定到指定IP地址运行,适合多网卡
connect_from_port_20=YES/NO
若为YES,则强迫FTP-DATA的数据传送使用port 20,默认YES
anonymous_enable=YES

this web application instance has been stopped already

详细错误信息如下:

1
2
[mybatis-plus MapperRefresh] org.apache.catalina.loader.WebappClassLoaderBase.checkStateForResourceLoading Illegal access: this web application instance has been stopped already. Could not load [META-INF/services/javax.xml.xpath.XPathFactory]. The following stack trace is thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access.
java.lang.IllegalStateException: Illegal access: this web application instance has been stopped already. Could not load [META-INF/services/javax.xml.xpath.XPathFactory]. The following stack trace is thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access.

关键信息如下:

1
this web application instance has been stopped already

KindEditor富文本编辑器使用

我的博客本来打算使用layui的富文本编辑器,但是出了一个问题,无法获取编辑器内容,我参考官方文档,获取内容也就那几个方法而已,但是引入进去后始终获取的值为空,百度和bing都试过了,但是始终还是获取不到值。