生而为人

程序员的自我修养

0%

chrome

刷新 command +r

强制刷新 command+shift+r

删除cookiecommand+shift+del点击 清除数据 注意勾选的选项(不要把保存的密码也删除)

[toc]

常用命令

查看依赖jar包

1
2
3
4
5
6
# maven版本 >= 3.0 -Dverbose参数可能失效
mvn dependency:tree -Dverbose

mvn dependency:tree -Dverbose -Dincludes=org.apache.logging.log4j:log4j-api

# 建议直接使用 -Dscope=test 查看完整树

打包

1
mvn clean -U package -pl analysis-tool -am -P dev -Dmaven.source.skip=true -Dmaven.test.skip=true

要注意的是-P 对大小写敏感

重新生成iml文件

1
mvn idea:module

参数

1
2
-e 详细错误描述
-X

问题汇总

the output path is not specified for module ‘xxx’

Specify the output path in the Project Structure dalog

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
Microsoft Windows [Version 10.0.19044.2006]
(c) Microsoft Corporation. All rights reserved.

C:\Users\jingqicao>echo PATH
PATH

C:\Users\jingqicao>echo $PATH
$PATH

C:\Users\jingqicao>echo %PATH
%PATH

C:\Users\jingqicao>echo %PATH%
C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\wbin;C:\Program Files\Common Files\Microsoft Shared\Microsoft Online Services;C:\Program Files (x86)\Common Files\Microsoft Shared\Microsoft Online Services;C:\windows\system32;C:\windows;C:\windows\System32\Wbem;C:\windows\System32\WindowsPowerShell\v1.0\;C:\windows\System32\OpenSSH\;C:\Program Files\Microsoft SQL Server\130\Tools\Binn\;C:\Program Files\Microsoft SQL Server\Client SDK\ODBC\170\Tools\Binn\;C:\Program Files\Git\cmd;C:\Program Files\Go\bin;D:\Support\gawk-3.1.6-1-bin\bin;D:\Support\Nuget;C:\Program Files\dotnet\;C:\Users\jingqicao\AppData\Local\CloudBuild;C:\Users\jingqicao\AppData\Local\CloudBuild;C:\Users\jingqicao\AppData\Local\Microsoft\WindowsApps;C:\Users\jingqicao\.dotnet\tools;C:\Users\jingqicao\AppData\Local\Programs\Microsoft VS Code\bin;C:\Users\jingqicao\Program Files\protoc-3.13.0-win64\bin;D:\Support\spark-3.0.1-bin-hadoop2.7\bin;D:\Support\spark-3.0.1-bin-hadoop2.7\sbin;C:\Program Files\Java\jdk1.8.0_291\bin;D:\Support\hadoop-2.7.7\bin;D:\Support\hadoop-2.7.7\sbin;D:\Support\apache-maven-3.8.1\bin;C:\Users\jingqicao\AppData\Local\Programs\Python\Python39\Scripts;C:\Users\jingqicao\AppData\Local\atom\bin;C:\Users\jingqicao\.dotnet\tools;D:\Support\Go\bin;

C:\Users\jingqicao>protoc.exe -I=D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\ --go_out=D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas.Go\Events\ --go_opt=file_extension=.pd.go D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\Events\App.proto
protoc-gen-go: no such flag -file_extension
--go_out: protoc-gen-go: Plugin failed with status code 1.

C:\Users\jingqicao>protoc.exe -I=D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\ --go_out=D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas.Go\Events\ --go_opt=.pd.go D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\Events\App.proto
protoc-gen-go: no such flag -.pd.go
--go_out: protoc-gen-go: Plugin failed with status code 1.

C:\Users\jingqicao>protoc.exe -I=D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\ --go_out=D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas.Go\Events\ --go_opt=. D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\Events\App.proto
protoc-gen-go: no such flag -.
--go_out: protoc-gen-go: Plugin failed with status code 1.

C:\Users\jingqicao>protoc.exe -I=D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\ --go_out=D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas.Go\Events\ D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\Events\App.proto
protoc-gen-go: unable to determine Go import path for "Events/App.proto"

Please specify either:
• a "go_package" option in the .proto source file, or
• a "M" argument on the command line.

See https://developers.google.com/protocol-buffers/docs/reference/go-generated#package for more information.

--go_out: protoc-gen-go: Plugin failed with status code 1.

C:\Users\jingqicao>protoc.exe -I=D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\ --go_out=D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas.Go\Events\ D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\Events\App.proto D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\Events\Auction.proto D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\Events\AuctionFacts.proto D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\Events\Bid.proto D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\Events\ClickEvent.proto D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\Events\CommonTypes.proto D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\Events\Device.proto D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\Events\ExternalUser.proto D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\Events\L1ClassifierScore.proto D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\Events\Location.proto D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\Events\MediationConfigParams.proto D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\Events\MediationServingLogRecord.proto D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\Events\OperatingSystem.proto D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\Events\PiiRecord.proto D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\Events\Revenue.proto D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\Events\Site.proto D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\Events\User.proto D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\Events\ViewabilityEvent.proto
google/protobuf/timestamp.proto: File not found.
Events/ViewabilityEvent.proto:4:1: Import "google/protobuf/timestamp.proto" was not found or had errors.
Events/ViewabilityEvent.proto:21:5: "google.protobuf.Timestamp" is not defined.
Events/ClickEvent.proto:4:1: Import "google/protobuf/timestamp.proto" was not found or had errors.
Events/ClickEvent.proto:18:9: "google.protobuf.Timestamp" is not defined.
Events/AuctionFacts.proto:3:1: Import "google/protobuf/timestamp.proto" was not found or had errors.
Events/AuctionFacts.proto:10:1: Import "Events/ViewabilityEvent.proto" was not found or had errors.
Events/AuctionFacts.proto:11:1: Import "Events/ClickEvent.proto" was not found or had errors.
Events/AuctionFacts.proto:23:9: "google.protobuf.Timestamp" is not defined.
Events/AuctionFacts.proto:45:9: "ViewabilityEvent" is not defined.
Events/AuctionFacts.proto:46:9: "ViewabilityEvent" is not defined.
Events/AuctionFacts.proto:47:9: "ClickEvent" is not defined.

C:\Users\jingqicao>protoc.exe -I=D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\ -I=D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\ --go_out=D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas.Go\Events\ D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\Events\App.proto
protoc-gen-go: unable to determine Go import path for "Events/App.proto"

Please specify either:
• a "go_package" option in the .proto source file, or
• a "M" argument on the command line.

See https://developers.google.com/protocol-buffers/docs/reference/go-generated#package for more information.

--go_out: protoc-gen-go: Plugin failed with status code 1.

C:\Users\jingqicao>protoc.exe -I=C:\Users\jingqicao\.nuget\packages\google.protobuf.tools\3.6.1\tools -I=D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\ --go_out=D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas.Go\Events\ D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\Events\App.proto
protoc-gen-go: unable to determine Go import path for "Events/App.proto"

Please specify either:
• a "go_package" option in the .proto source file, or
• a "M" argument on the command line.

See https://developers.google.com/protocol-buffers/docs/reference/go-generated#package for more information.

--go_out: protoc-gen-go: Plugin failed with status code 1.

C:\Users\jingqicao>protoc.exe -I=C:\Users\jingqicao\.nuget\packages\google.protobuf.tools\3.6.1\tools -I=D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\ --go_package=Microsoft.BI.Mediation.Schemas.Go --go_out=D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas.Go\Events\ D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\Events\App.proto
Unknown flag: --go_package

C:\Users\jingqicao>protoc.exe -I=C:\Users\jingqicao\.nuget\packages\google.protobuf.tools\3.6.1\tools -I=D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\ --go_package=Microsoft.BI.Mediation.Schemas.Go --go_out=D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas.Go\Events\ D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\Events\App.proto
Unknown flag: --go_package

C:\Users\jingqicao>protoc.exe -I=C:\Users\jingqicao\.nuget\packages\google.protobuf.tools\3.6.1\tools -I=D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\ --go_out=D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas.Go\Events\ D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\Events\App.proto
Events/App.proto:4:23: Invalid escape sequence in string literal.
Events/App.proto:4:31: Invalid escape sequence in string literal.
Events/App.proto:4:48: Invalid escape sequence in string literal.
Events/App.proto:4:56: Invalid escape sequence in string literal.
Events/App.proto:4:64: Invalid escape sequence in string literal.
Events/App.proto:6:1: Expected ";".

C:\Users\jingqicao>protoc.exe -I=C:\Users\jingqicao\.nuget\packages\google.protobuf.tools\3.6.1\tools -I=D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\ --go_out=D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas.Go\Events\ D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\Events\App.proto
Events/App.proto:4:23: Invalid escape sequence in string literal.
Events/App.proto:4:31: Invalid escape sequence in string literal.
Events/App.proto:4:48: Invalid escape sequence in string literal.
Events/App.proto:4:56: Invalid escape sequence in string literal.
Events/App.proto:4:64: Invalid escape sequence in string literal.

C:\Users\jingqicao>protoc.exe -I=C:\Users\jingqicao\.nuget\packages\google.protobuf.tools\3.6.1\tools -I=D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\ --go_out=D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas.Go\Events\ D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\Events\App.proto
Events/App.proto:4:23: Invalid escape sequence in string literal.
Events/App.proto:4:31: Invalid escape sequence in string literal.
Events/App.proto:4:48: Invalid escape sequence in string literal.
Events/App.proto:4:56: Invalid escape sequence in string literal.
Events/App.proto:4:64: Invalid escape sequence in string literal.
Events/App.proto:4:98: Invalid escape sequence in string literal.

C:\Users\jingqicao>protoc.exe -I=C:\Users\jingqicao\.nuget\packages\google.protobuf.tools\3.6.1\tools -I=D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\ --go_out=D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas.Go\Events\ D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\Events\App.proto
Events/App.proto:4:23: Invalid escape sequence in string literal.
Events/App.proto:4:26: Invalid escape sequence in string literal.
Events/App.proto:4:60: Invalid escape sequence in string literal.

C:\Users\jingqicao>protoc.exe -I=C:\Users\jingqicao\.nuget\packages\google.protobuf.tools\3.6.1\tools -I=D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\ --go_out=D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas.Go\Events\ D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\Events\App.proto

C:\Users\jingqicao>protoc.exe -I=C:\Users\jingqicao\.nuget\packages\google.protobuf.tools\3.6.1\tools -I=D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\ --go_out=D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas.Go\Events\ D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\Events\App.proto D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\Events\Auction.proto D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\Events\AuctionFacts.proto D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\Events\Bid.proto D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\Events\ClickEvent.proto D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\Events\CommonTypes.proto D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\Events\Device.proto D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\Events\ExternalUser.proto D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\Events\L1ClassifierScore.proto D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\Events\Location.proto D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\Events\MediationConfigParams.proto D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\Events\MediationServingLogRecord.proto D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\Events\OperatingSystem.proto D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\Events\PiiRecord.proto D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\Events\Revenue.proto D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\Events\Site.proto D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\Events\User.proto D:\project\Ads.BI.Mediation\private\Schemas\Microsoft.BI.Mediation.Schemas\PROTO\Events\ViewabilityEvent.proto

1
2
3
4
5
spark.sessionState.conf.setConfString("spark.sql.streaming.minBatchesToRetain", "5")
logger.info("spark.sql.streaming.minBatchesToRetain:" + spark.sessionState.conf.minBatchesToRetain)
logger.info("spark.sql.shuffle.partitions:" + spark.sparkContext.getConf.get("spark.sql.shuffle.partitions"))
logger.info("spark.sql.streaming.multipleWatermarkPolicy:" + spark.sparkContext.getConf.get("spark.sql.streaming.multipleWatermarkPolicy"))
val logSparkConf = config.getConfig("logSparkConf")

[toc]

文件间跳转

Markdown 语法

图片保存

PicGo config

PicGo config2

设置

配置文件

通过文件-偏好设置-外观-打开主题文件夹,找到主题配置文件目录。如果没有找到对应的配置文件,可以手动生成。

配置文件分类

  1. base.user.css 基础的用户自定义配置文件,会全局生效,优先级第二。
  2. {当前主题}.user.css 主题级的用户自定义配置文件,当前主题生效,优先级最高。
  3. {当前主题}.css 主题基础配置文件,当前主题生效,优先级最低。

优先级逻辑:自定义 > 基础;{当前主题} > base

加载顺序: {当前主题}.css -> base.user.css -> {当前主题}.user.css

toc展示的目录层级

配置文件中加入如下内容,建议加在base.user.css中

1
2
3
4
5
6
/* 隐藏四级、五级、六级标题(只显示 h1, h2, h3) */
.md-toc-h4,
.md-toc-h5,
.md-toc-h6 {
display: none;
}

格式

数学表达式

要启用这个功能,首先到Preference->Editor中启用。然后使用$符号包裹Tex命令,例如:$lim_{x \to \infty} \ exp(-x)=0$将产生如下的数学表达式:

img

下标

下标使用~包裹,例如:H~2~O将产生水的分子式。

上标

上标使用^包裹,例如:y^2^=4将产生表达式

img

下划线

用HTML的语法Underline将产生下划线Underline.

删除线

GFM添加了删除文本的语法,这是标准的Markdown语法木有的。使用~~包裹的文本将会具有删除的样式,例如~删除文本~将产生删除文本的样式。

代码

使用`包裹的内容将会以代码样式显示,例如

使用printf()

则会产生printf()样式。

输入~~~或者```然后回车,可以输入代码块,并且可以选择代码的语言。例如:public Class HelloWorld{ System.out.println(“Hello World!”); }

目录列表Table of Contents(TOC)

输入[toc]然后回车,将会产生一个目录,这个目录抽取了文章的所有标题,自动更新内容。

水平分割线

使用***或者—,然后回车,来产生水平分割线。

标注

我们可以对某一个词语进行标注。例如

某些人用过了才知道[^注释] [^注释]:Somebody that I used to know.

将产生:

把鼠标放在注释上,将会有提示内容。

强调

使用两个*号或者两个_包裹的内容将会被强调。例如

使用两个*号强调内容 使用两个下划线强调内容

将会输出

使用两个号强调内容 使用两个下划线强调内容 Typroa 推荐使用两个号。

斜体

在标准的Markdown语法中,*和_包裹的内容会是斜体显示,但是GFM下划线一般用来分隔人名和代码变量名,因此我们推荐是用星号来包裹斜体内容。如果要显示星号,则使用转义:

*

插入图片

我们可以通过拖拉的方式,将本地文件夹中的图片或者网络上的图片插入。

插入URL连接

使用尖括号包裹的url将产生一个连接,例如:将产生连接:www.baidu.com.

如果是标准的url,则会自动产生连接,例如:www.baidu.com

插入表情

使用:happy:输入高兴的表情,使用:sad:输入悲伤的表情,使用:cry:输入哭的表情等。以此类推!

img

grouping sets 要保证sets中每个组合中缺失的维度,不能包含null值

group语法增强,可以使用维度下标表示,但如果grouping sets不支持,只能写字段名