程序员搭开发环境,是不是总遇到各种奇葩问题?明明照着教程做,要么缺这个库,要么版本不对,折腾大半天还启动不了项目。今天这个 linux 操作系统教程,就专门讲程序员咋在 Linux 上搭开发环境,从装工具到避坑技巧,一步一步说清楚,新手也能看懂。
先把系统基础打牢
刚装的 Linux 系统,别急着装开发工具,先把基础设置弄好,不然后面麻烦更多。
- 换国内软件源:默认的国外源下载太慢,换成阿里、华为这些国内的,用命令行改一下配置文件就行。具体步骤网上一搜就有,照着敲命令,重启软件源服务,速度能快不少。
- 装必要的依赖包:很多开发工具需要系统有一些基础组件才能跑起来,用 “sudo apt install build-essential”(Ubuntu 系统)一次性装一堆常用的,省得后面报错说 “缺少 xxx”。
- 更新系统:用 “sudo apt update && sudo apt upgrade” 更新一下系统组件,虽然可能花点时间,但能减少不少兼容性问题。
虽然这些步骤看着不起眼,但跳过的话,后面装 Java、Python 这些工具时,大概率会出问题。
主流开发工具咋装?
不同编程语言需要的工具不一样,挑几个常用的说说具体步骤。
Java 开发环境
- 装 JDK:别直接用系统自带的 OpenJDK,有时候会有奇怪的 bug。去 Oracle 官网下载对应版本的 JDK,解压到 /usr/local 目录,然后用 “export” 命令配置环境变量,记得写到.bashrc 文件里,不然重启就没了。
- 验证是否装好:敲 “java -version” 和 “javac -version”,如果显示版本号,就说明成了。
Python 开发环境
- 装 Python:Linux 一般自带 Python,但版本可能太低。用 “sudo apt install python3” 装新版本,再装个 pip(包管理工具),“sudo apt install python3-pip”,后面装库就方便了。
- 虚拟环境:强烈建议用虚拟环境,每个项目单独建一个,“python3 -m venv 环境名”,用 “source 环境名 /bin/activate” 激活,这样不同项目的库版本不冲突。
不过话说回来,有些老项目必须用特定版本的工具,这时候就得多装几个版本,用工具管理切换,比如 Java 的 jEnv,Python 的 pyenv,刚开始可能觉得麻烦,用熟了就知道有多香。
编辑器和 IDE 咋选?
写代码总不能用记事本吧,这几个工具程序员用得多。
- VS Code:轻量、插件多,基本啥语言都能写,用 “sudo snap install code” 就能装,插件直接在商店里搜,比如 Python 插件、Java 插件,装上就能用。
- IntelliJ IDEA:Java 开发首选,功能强大,但比较占内存。官网下载.tar.gz 包,解压后双击 bin 目录里的 idea.sh 就能运行,记得创建个桌面快捷方式,不然每次找文件麻烦。
有人说 vim 编辑器很厉害,确实能提高效率,但新手别一上来就啃,先把代码写明白再说,不然光记快捷键就够头疼的。
常见坑点和避坑技巧
搭环境时踩的坑,比写的代码都多,这些技巧能帮你少走弯路。
- 权限问题:别动不动就用 root 用户操作,装工具、跑项目用普通用户,权限不够就用 “sudo”,不然文件权限乱了,后面各种报错。
- 路径别瞎改:工具解压到 /usr/local 或 /opt 目录,别往自己家目录放,找起来不方便,权限也容易出问题。
- 多备份配置:改了环境变量或者配置文件,先复制一份,“cp 文件名 文件名.bak”,改崩了还能恢复,血的教训啊。
有个问题我一直没弄明白,就是有时候明明环境变量配置对了,重启后还是不生效,得手动 source 一下才行,具体机制待进一步研究,有知道的朋友可以留言说说。
最后检查环境是否能用
环境搭好后,别直接开始写代码,跑个测试项目试试。
- Java 项目:建个简单的 HelloWorld.java,用 javac 编译,java 运行,能输出就没问题。
- Python 项目:写个 print ("Hello"),运行看看,再用 pip 装个 requests 库,试试能不能导入。
如果都没问题,就说明环境 OK 了。
我搭环境的习惯是,每一步都记下来,写成脚本,下次换电脑直接运行脚本,省得重复操作。刚开始可能要花一天时间搭环境,熟练了两三个小时就能搞定。其实搭环境也是程序员的基本功,遇到问题别慌,大部分情况都是配置不对或者版本不兼容,耐心排查总能解决。环境搭顺了,写代码都有劲儿,你说对吧?
标签: build-essential 操作系统
版权声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。
还木有评论哦,快来抢沙发吧~