-
Notifications
You must be signed in to change notification settings - Fork 0
/
ubuntu环境搭建.txt
503 lines (321 loc) · 15.2 KB
/
ubuntu环境搭建.txt
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
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
1.安装新的vi编辑,自带的有bug
apt-get install vim-nox
2.安装node
官网下载node对应的版本
sudo vi /etc/profile
粘贴一下内容到文末,i表示插入内容,:wq!表示保存并退出
#SET PATH FOR NODEJS
export NODE_HOME=/home/hjh/tools/node-v10.14.1-linux-x64
export PATH=$NODE_HOME/bin:$PATH
其中,NODE_HOME表示node的解压路径
使用以下命令使环境变量生效:
source /etc/profile
npm config set registry https://registry.npm.taobao.org
检查是否配置成功:
node -v
npm -v
如果关闭掉命令窗口,npm -v无效
解决办法:
sudo gedit ~/.bashrc
添加source /etc/profile
3.安装git环境
apt-get install git
检查版本:
git --version
安装git图形化工具
sudo apt-get install gitk
sudo apt-get install git-gui
4.安装sublime
Sublime Text 在 www.sublimetext.com 上可以免费下载,而且运行时只会偶尔提示一下注册,并不影响免费使用。
在 Ubuntu 上还可以用如下简便的方法进行安装:
sudo add-apt-repository ppa:webupd8team/sublime-text-3
sudo apt-get update
sudo apt-get install sublime-text-installer
ubuntu配置好的环境存放于 百度云盘/佳豪专属领域下面
替换~/.config/sublime-text-3文件夹即可
自定义设置
在Preferences | Settings - Default中看到 JSON 格式所列出的某条想要修改的条目,只需再到Preferences | Settings - User中也按照 JSON 格式添加这一条条目即可。
设置等宽字体
在 Linux 下的 Sublime Text 如果不是等宽字体的,则添加
"font_face": "DejaVu Sans Mono",
转换 tab 为 space
如果需要转换,则添加
"translate_tabs_to_spaces": true,
设置换行符为 LF
Sublime Text 默认新文件的换行符为系统相关,这样 Windows 下的话就是 CRLF 了。为了可能的 bash 脚本批量处理时不出问题以及减小文件体积,设为 LF 更合适,方法为添加
"default_line_ending": "unix",
自动删除行尾的空白字符(空格或制表符)
"trim_trailing_white_space_on_save": true,
阅读 javascript 源代码
Sublime Text 自带的函数跳转 F12 快捷键非常给力,理解起代码来方便多了。
选定文件夹查找
Nodejs 代码会包含一个自动下载的包含了许多许多文件的 node_modules 目录,此时如果简单使用 Sublime Text 查找菜单中的文件夹查找功能或是使用 grep 命令,会返回许多我们不需要的 node_modules 中的搜索结果。解决方法是在 Sublime Text 的侧边栏用 Ctrl 键加鼠标左键的方式选中想要查找的文件夹,然后右键菜单进行查找。另外,在 Linux 中还可以使用 ag 命令来进行查找, ag 会自动忽略 .gitignore 文件里指定的目录。
在 Sublime Text 中安装插件管理工具 Package Control
把 https://packagecontrol.io/installation 网页上显示的 Python 语句复制下来,点击 Sublime Text 的菜单View | Show Console,在打开的 Console 中粘帖 Python 语句并回车,稍后根据提示重启 Sublime Text 即可使用菜单Preferences | Package Control来Install Package安装各种强大的插件了。
在 Package Control 中安装 Nodejs
这样就可以增加许多自动完成功能,比如敲入fs就会出现许多fs.mkdir等相关的函数可供选择。还有,菜单 Tools | Snippet 中也会多出几个代码段可供选择。
在 Package Control 中安装 Babel
支持 ES6 , React.js , jsx 代码高亮。
安装好后需进行配置:
打开 .js , .jsx 后缀的文件
点击菜单 view | Syntax | Open all with current extension as... | Babel | JavaScript (Babel)
在 Package Control 中安装 SublimeLinter
这是使用各种语言的 lint 工具前需要安装的基础插件。
在 Package Control 中安装 SublimeLinter-contrib-eslint
由于 eslint 相比 jshint 多出了对最新代码格式比如 React 的支持,所以推荐安装 eslint 。
安装好 SublimeLinter-contrib-eslint 之后,如果是还不存在规则文件 .eslintrc 的新项目,则还需如下操作:
实际项目中使用的复杂规则文件
在源代码目录中安装 eslint 可执行文件:
npm install --save-dev babel-eslint eslint eslint-plugin-react
从 https://github.com/flyskywhy/noder-react-native 中复制 .eslintrc 文件到源代码目录。
解决规则文件没起作用的问题
这可能是 eslint 的一个 BUG ,解决的方法是再额外全局安装一下 eslint
npm install -g eslint
如果不存在 /usr/bin/node ,则还需比如
sudo ln -s ~/.nvm/v8.9.3/bin/node /usr/bin/node
简单规则文件示例
在源代码目录中安装 eslint 可执行文件:
npm install --save-dev eslint eslint-plugin-jsx-a11y eslint-config-airbnb eslint-plugin-import eslint-plugin-react
在源代码目录中初始化 .eslintrc 文件,后续可再自行编辑:
eslint --init
在初始化过程中回答如下问题即可:
? How would you like to configure ESLint? Use a popular style guide
? Which style guide do you want to follow? AirBnB
? What format do you want your config file to be in? JavaScript
这里选择 AirBnB 是因为 airbnb 的 react 开发代码规范 得到了许多开发者的点赞。
在 Package Control 中安装 SublimeLinter-jshint
安装好 SublimeLinter-jshint 之后,还需如下操作:
安装 jshint 可执行文件:
npm install -g jshint
在源代码目录中建立.jshintrc文件,文件内容示例:
{
"esversion": 6
}
然后如前所述在 paths 处设定好 jshint 可执行文件的所在路径。
在 Package Control 中安装 Color Highlighter
这样就可以直观地在 .css 文件中 color: 的十六进制数值上通过左键单击看到颜色,还可以在右键菜单中选择颜色。
在 Package Control 中安装 DocBlockr
这样就可以写出很标准的函数注释。
在 Package Control 中安装 Emmet 和 LiveStyle
这两个插件可以极大提高前端人员的效率。
Emmet 可参见这篇文章 前端开发必备!Emmet使用手册
LiveStyle 可参见这篇文章 Emmet LiveStyle 无刷新同步修改预览
如果安装后重启 Sublime Text 时出现如下错误:
Error while loading PyV8 binary: exit code 3
那意味着由于网络问题而连接 github.com 超时,解决方法是在 View | Show Console 中查看发现比如是这样的下载语句错误:
https://raw.github.com/emmetio/pyv8-binaries/master/pyv8-linux64-p3.zip
于是手动将这个文件下载下来后解压缩为 ~/.config/sublime-text-3/Installed Packages/PyV8/linux64-p3/ 即可。
在 Package Control 中安装 Modific
在保存文件后可以看到相对于上一次 git 提交点的修改之处。
在 Package Control 中安装 OmniMarkupPreviewer
这样就可以在浏览器中实时预览 markdown 文件。
在 Package Control 中安装 All Autocomplete
这样就可以在敲代码时也能自动匹配到其它文件中的某个变量。
在 Package Control 中安装 AlignTab
这样就可以很容易让代码基于 = 或 : 等符号进行列对齐。
在 Package Control 中安装 JsFormat
这样就可以不用记忆 = 符号两边要加空格之类众多的编码规范。
为了支持 React 的 JSX 格式,需要打开 preferences | Package Settings | JsFormat | Setting | Users ,输入以下配置:
{
"e4x": true
}
补充:
1.安装Terminal
当前目录打开终端 command+shift+T
2.react-native-snippets
代码块
3.安装主题
Material Theme
激活主题:
Tools > Command Palette 搜索Material Theme: Activate theme.
选中,然后选择 Material Theme > Activate
Preferences > Packages > Material Theme > Activate
4.修改侧边栏字体大小
1. 安装”PackageResourceViewer”
2. Ctrl+Shift+P,搜索”PackageResourceViewer: Open Resource”
4. 搜索”Material Theme”
5. 搜索”Material-Theme.sublimt-theme”
6. 在”sidebar_label”,”后面一行加上 "font.size": 15,
如果觉得行间距太小,可以往上找下,有个”sidebar_tree”,,调一下里边的”row_padding”值即可
标题栏大小:在tab_label后面添加"font.size": 14
5.输入中文:
sudo apt instal gcc
sudo apt install pkg-config
sudo apt install gtk+2.0
编译源代码,成功之后开到一个so文件
gcc -shared -o libsublime-imfix.so sublime_imfix.c `pkg-config --libs --cflags gtk+-2.0` -fPIC
再把so文件复制到sublime安装目录
sudo mv libsublime-imfix.so /opt/sublime_text/
为了在命令中执行 subl 将可以使用中文输入,修改/usr/bin/subl
sudo gedit /usr/bin/subl
为
#!/bin/sh
LD_PRELOAD=/opt/sublime_text/libsublime-imfix.so exec /opt/sublime_text/sublime_text "$@"
为了使用鼠标右键打开文件时能够使用中文输入,需要修改文件sublime_text.desktop
Exec=/opt/sublime_text/sublime_text %F 修改为
Exec=bash -c "LD_PRELOAD=/opt/sublime_text/libsublime-imfix.so exec /opt/sublime_text/sublime_text %F"
Exec=/opt/sublime_text/sublime_text -n 修改为
Exec=bash -c "LD_PRELOAD=/opt/sublime_text/libsublime-imfix.so exec /opt/sublime_text/sublime_text -n"
Exec=/opt/sublime_text/sublime_text --command new_file 修改为
Exec=bash -c "LD_PRELOAD=/opt/sublime_text/libsublime-imfix.so exec /opt/sublime_text/sublime_text --command new_file"
重启便可以输入中文
5.安装redis
官网方法安装即可
配置可以用命令service start redis启动
1. vi /home/hjh/tools/redis-5.0.2/redis.conf,末尾添加 daemonize yes
2. mkdir /etc/redis
cp /home/hjh/tools/redis-5.0.2/redis.conf /etc/redis/6379.conf
3. cp /home/hjh/tools/redis-5.0.2/utils/redis_init_script /etc/init.d/redis
4. vi /etc/init.d/redis,头部第二行添加
# chkconfig: 2345 10 90
# description: Start and Stop redis
修改以下参数
EXEC=/home/hjh/tools/redis-5.0.2/src/redis-server
CLIEXEC=/home/hjh/tools/redis-5.0.2/src/redis-cli
5.启动
service redis start
关闭
service redis stop
查看是否启动: ss -tanl 6379代表redis启动成功
6.安装mysql
sudo apt-get install mysql-server
sudo apt install mysql-client
sudo apt install libmysqlclient-dev
安装成功后可以通过下面的命令测试是否安装成功:
sudo netstat -tap | grep mysql
进入mysql服务:
mysql -uroot -p你的密码
7.代理设置
google浏览器插件
react
redux
8.服务器搭建
sudo apt-get install filezilla
账号: 107.173.122.193:5633
密码:
命令行登录服务器
ssh [email protected] -p5633
服务器查看系统:
cat /etc/redhat-release
centos系统安装nodejs:
yum install -y wget
wget https://nodejs.org/dist/v9.3.0/node-v9.3.0-linux-x64.tar.xz
xz -d node-v9.3.0-linux-x64.tar.xz
tar -xf node-v9.3.0-linux-x64.tar
ln -s ~/node-v9.3.0-linux-x64/bin/node /usr/bin/node
ln -s ~/node-v9.3.0-linux-x64/bin/npm /usr/bin/npm
node -v
npm -v
centos系统安装nginx:
yum install gcc-c++
yum install -y pcre pcre-devel
yum install -y zlib zlib-devel
yum install -y openssl openssl-devel
wget http://nginx.org/download/nginx-1.12.0.tar.gz
tar -zxvf nginx-1.12.0.tar.gz
cd nginx-1.12.0
mkdir /var/temp
mkdir /var/temp/nginx
mkdir /var/run/nginx/
./configure \
--prefix=/usr/local/nginx \
--pid-path=/var/run/nginx/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--with-http_gzip_static_module \
--http-client-body-temp-path=/var/temp/nginx/client \
--http-proxy-temp-path=/var/temp/nginx/proxy \
--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \
--http-uwsgi-temp-path=/var/temp/nginx/uwsgi \
--http-scgi-temp-path=/var/temp/nginx/scgi
make && make install
cd /usr/local/nginx/sbin/
./nginx
ps -ef | grep nginx
出现master和worker两个进程证明启动成功
先停止在启动
./nginx -s quit && ./nginx
完全停止
cd /usr/local/nginx/sbin && ./nginx -s quit
9.右键添加以管理员权限打开文件夹
sudo apt install nautilus-admin
nautilus -q
10. 安装nginx
安装:
sudo apt-get install nginx
启动:
sudo systemctl start nginx
关闭:
sudo systemctl stop nginx
开放端口
sudo ufw allow 80
配置文件
/etc/nginx/sites-available/
11. 安装视频播放软件
sudo apt-add-repository ppa:rvm/smplayer
sudo apt-get update
sudo apt-get install smplayer smplayer-skins smplayer-themes
设置smplayer为默认播放器:
系统设置--详细信息--默认程序--视频--SMPlayer
12. 搭建react-native环境
12.1 nodejs安装
12.2 安装watchman
sudo apt-get install autoconf automake python-dev libtool pkg-config libssl-dev
12.3 安装flow
npm install -g flow-bin
12.4 安装脚手架
npm install -g react-native-cli
12.5 配置 Android 开发环境
从 https://developer.android.google.cn/studio/index.html 下载 sdk-tools-linux 解压放置
/home/hjh/tools/android-sdk
编辑~/.bashrc,添加
export ANDROID_HOME=/home/hjh/tools/android-sdk
yes | /home/hjh/tools/android-sdk/tools/bin/sdkmanager --licenses
查看android-sdk目录下,存在licenses即可
为了让 android-sdk 中 32 位的 aapt 能够在 64 位的 Linux 中运行,
sudo apt install lib32stdc++6 lib32z1
如果 echo $SHELL 发现是 dash 的话,后续编译时会报 aapt: Syntax error: newline unexpected (expecting ")" 的错误,所以还需换成 bash:
sudo dpkg-reconfigure dash
java -version,javac -version,如果发现是8以上的版本,为了保证运行顺利,还需完全卸载java环境,详情见
https://jingyan.baidu.com/article/f54ae2fc72e9121e92b8498f.html
安装java8环境
https://www.cnblogs.com/smiler/p/6939913.html
sudo apt install default-jdk
创建项目
react-native init ReactNativeDemoApp
安装项目到真机
react-native run-android
修改内容:
react-native start
打包
(1)keytool -genkey -v -keystore rn-demo.keystore -alias rn-demo -keyalg RSA -keysize 2048 -validity 10000
打包出来的rn-demo.keystore放置项目目录android/app/ 下面
(2)更改android/gradle.properties
MYAPP_RELEASE_STORE_FILE=rn-demo.keystore
MYAPP_RELEASE_KEY_ALIAS=rn-demo
MYAPP_RELEASE_STORE_PASSWORD=*****
MYAPP_RELEASE_KEY_PASSWORD=*****
(3) 更改 android/app/build.gradle
signingConfigs {
release {
storeFile file(MYAPP_RELEASE_STORE_FILE)
storePassword MYAPP_RELEASE_STORE_PASSWORD
keyAlias MYAPP_RELEASE_KEY_ALIAS
keyPassword MYAPP_RELEASE_KEY_PASSWORD
}
}
buildTypes {
release {
...
signingConfig signingConfigs.release
}
}
(4)生成apk
cd android
./gradlew assembleRelease
成功之后在android/app/build/outputs/apk/release/下面多出一个app-release.apk即可
手机上直接安装apk
react-native run-android --variant=release
release在线更新详见
https://segmentfault.com/a/1190000009642563