Linux开发环境配置
Linux是开发者的热门选择,特别是对于服务器端和后端开发。本指南将以Ubuntu和CentOS为例,详细介绍如何在Linux上配置Java、Maven、Node.js等开发环境。
Java开发环境配置
JDK安装与配置
Linux系统上有多种安装JDK的方法,我们介绍最常用的两种。
方法一:使用包管理器安装
Ubuntu/Debian系统:
# 更新包信息
sudo apt update
# 安装OpenJDK 17
sudo apt install openjdk-17-jdk
# 验证安装
java -version
javac -version
CentOS/RHEL系统:
# 安装OpenJDK 17
sudo dnf install java-17-openjdk-devel
# 或者在旧版CentOS上使用yum
# sudo yum install java-17-openjdk-devel
# 验证安装
java -version
javac -version
方法二:手动安装Oracle JDK
- 从Oracle官方网站下载适合的Linux版本JDK(.tar.gz格式)
- 解压到指定目录:
sudo mkdir -p /usr/local/java sudo tar -xzf jdk-17_linux-x64_bin.tar.gz -C /usr/local/java
- 配置环境变量:
sudo nano /etc/profile.d/jdk.sh
- 添加以下内容:
export JAVA_HOME=/usr/local/java/jdk-17.0.x export PATH=$JAVA_HOME/bin:$PATH
- 使配置生效:
source /etc/profile.d/jdk.sh
- 验证安装:
java -version javac -version
使用alternatives管理多个Java版本
如果系统中安装了多个Java版本,可以使用alternatives系统进行管理:
# 列出已安装的Java版本
sudo update-alternatives --display java
# 配置默认Java版本
sudo update-alternatives --config java
sudo update-alternatives --config javac
Maven安装与配置
方法一:使用包管理器安装Maven
Ubuntu/Debian系统:
sudo apt update
sudo apt install maven
CentOS/RHEL系统:
sudo dnf install maven
# 或
# sudo yum install maven
方法二:手动安装Maven
下载最新版Maven:
wget https://dlcdn.apache.org/maven/maven-3/3.9.5/binaries/apache-maven-3.9.5-bin.tar.gz
解压到指定目录:
sudo tar -xzf apache-maven-3.9.5-bin.tar.gz -C /opt sudo ln -s /opt/apache-maven-3.9.5 /opt/maven
设置环境变量:
sudo nano /etc/profile.d/maven.sh
添加以下内容:
export MAVEN_HOME=/opt/maven export PATH=${MAVEN_HOME}/bin:${PATH}
使配置生效:
source /etc/profile.d/maven.sh
验证安装:
mvn -version
配置Maven镜像
如果需要加速依赖下载,可以配置国内镜像:
mkdir -p ~/.m2
nano ~/.m2/settings.xml
添加以下内容:
<settings>
<mirrors>
<mirror>
<id>aliyun</id>
<name>Aliyun Maven Repository</name>
<url>https://maven.aliyun.com/repository/public</url>
<mirrorOf>central</mirrorOf>
</mirror>
</mirrors>
</settings>
Node.js开发环境配置
方法一:使用包管理器安装Node.js
Ubuntu/Debian系统:
# 添加NodeSource仓库以获取最新版本
curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash -
# 安装Node.js和npm
sudo apt install -y nodejs
CentOS/RHEL系统:
# 添加NodeSource仓库
curl -fsSL https://rpm.nodesource.com/setup_18.x | sudo bash -
# 安装Node.js和npm
sudo dnf install -y nodejs
# 或
# sudo yum install -y nodejs
方法二:使用NVM安装(推荐)
NVM(Node Version Manager)可以轻松管理多个Node.js版本:
# 安装NVM
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.5/install.sh | bash
# 重新加载shell配置
source ~/.bashrc # 或 source ~/.zshrc 如果使用zsh
# 安装最新的LTS版本Node.js
nvm install --lts
# 使用已安装的版本
nvm use --lts
# 设置默认版本
nvm alias default 'lts/*'
验证安装
node -v
npm -v
配置npm镜像(可选)
为加速npm包下载,可以配置国内镜像:
npm config set registry https://registry.npmmirror.com
开发工具安装
Visual Studio Code
# Ubuntu/Debian
sudo apt update
sudo apt install software-properties-common apt-transport-https wget
wget -q https://packages.microsoft.com/keys/microsoft.asc -O- | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://packages.microsoft.com/repos/vscode stable main"
sudo apt install code
# CentOS/RHEL
sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
sudo nano /etc/yum.repos.d/vscode.repo
在vscode.repo文件中添加:
[code]
name=Visual Studio Code
baseurl=https://packages.microsoft.com/yumrepos/vscode
enabled=1
gpgcheck=1
gpgkey=https://packages.microsoft.com/keys/microsoft.asc
然后安装:
sudo dnf install code
# 或
# sudo yum install code
IntelliJ IDEA(社区版)
# 下载最新版本
wget https://download.jetbrains.com/idea/ideaIC-2023.2.5.tar.gz
# 解压
sudo tar -xzf ideaIC-2023.2.5.tar.gz -C /opt
cd /opt/idea-IC-232.10227.8/bin # 版本号可能不同
# 启动
./idea.sh
Git安装与配置
几乎所有Linux发行版都有Git包:
# Ubuntu/Debian
sudo apt update
sudo apt install git
# CentOS/RHEL
sudo dnf install git
# 或
# sudo yum install git
基本配置
git config --global user.name "Your Name"
git config --global user.email "your.email@example.com"
git config --global init.defaultBranch main
# 生成SSH密钥(可选)
ssh-keygen -t ed25519 -C "your.email@example.com"
Docker安装
Docker是容器化开发和部署的理想工具:
Ubuntu/Debian
# 卸载旧版本
sudo apt remove docker docker-engine docker.io containerd runc
# 安装依赖
sudo apt update
sudo apt install ca-certificates curl gnupg lsb-release
# 添加Docker官方GPG密钥
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
# 设置稳定版仓库
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
# 安装Docker引擎
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io
# 将当前用户添加到docker组(无需sudo运行docker)
sudo usermod -aG docker $USER
CentOS/RHEL
# 安装依赖
sudo dnf install -y yum-utils
# 添加仓库
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
# 安装Docker引擎
sudo dnf install docker-ce docker-ce-cli containerd.io
# 启动Docker
sudo systemctl start docker
sudo systemctl enable docker
# 将当前用户添加到docker组
sudo usermod -aG docker $USER
验证Docker安装
# 重新登录后生效
docker run hello-world
数据库环境
MySQL
Ubuntu/Debian:
sudo apt update
sudo apt install mysql-server
# 安全配置
sudo mysql_secure_installation
# 启动服务
sudo systemctl start mysql
sudo systemctl enable mysql
CentOS/RHEL:
sudo dnf install mysql-server
# 启动服务
sudo systemctl start mysqld
sudo systemctl enable mysqld
# 安全配置
sudo mysql_secure_installation
MongoDB
Ubuntu/Debian:
# 导入公钥
wget -qO - https://www.mongodb.org/static/pgp/server-6.0.asc | sudo apt-key add -
# 添加MongoDB源
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu $(lsb_release -cs)/mongodb-org/6.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list
# 安装
sudo apt update
sudo apt install -y mongodb-org
# 启动服务
sudo systemctl start mongod
sudo systemctl enable mongod
CentOS/RHEL:
# 创建仓库文件
cat <<EOF | sudo tee /etc/yum.repos.d/mongodb-org-6.0.repo
[mongodb-org-6.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/\$releasever/mongodb-org/6.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-6.0.asc
EOF
# 安装
sudo dnf install -y mongodb-org
# 启动服务
sudo systemctl start mongod
sudo systemctl enable mongod
环境变量管理技巧
在Linux中,环境变量通常在以下文件中设置:
- 系统级别:
/etc/profile
或/etc/profile.d/*.sh
- 用户级别:
~/.profile
、~/.bashrc
或~/.zshrc
(如果使用zsh)
创建环境变量管理脚本
# 创建环境变量管理脚本
nano ~/bin/dev-env.sh
添加以下内容:
#!/bin/bash
# Java环境
export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64
# 或 export JAVA_HOME=/usr/local/java/jdk-17.0.x
# Maven环境
export MAVEN_HOME=/opt/maven
export M2_HOME=$MAVEN_HOME
# 添加到PATH
export PATH=$JAVA_HOME/bin:$MAVEN_HOME/bin:$PATH
# 显示环境信息
echo "==== 开发环境已配置 ===="
echo "Java版本: $(java -version 2>&1 | head -n 1)"
echo "Maven版本: $(mvn -version | head -n 1)"
echo "Node版本: $(node -v)"
echo "========================="
使用方式:
chmod +x ~/bin/dev-env.sh
source ~/bin/dev-env.sh
多版本管理工具
Linux系统提供了多种工具来管理不同版本的开发环境:
SDKMAN:管理Java、Maven、Gradle等版本
# 安装SDKMAN curl -s "https://get.sdkman.io" | bash source "$HOME/.sdkman/bin/sdkman-init.sh" # 列出可用的JDK版本 sdk list java # 安装特定版本 sdk install java 17.0.6-tem # 切换版本 sdk use java 17.0.6-tem
NVM:管理Node.js版本
# 列出远程可用的Node.js版本 nvm ls-remote # 安装并使用特定版本 nvm install 16.19.1 nvm use 16.19.1
pyenv:管理Python版本
常见问题与解决方案
权限问题
无法执行命令
# 添加执行权限 chmod +x filename
sudo权限不足
- 确保用户在sudo组中
sudo usermod -aG sudo username
包依赖问题
依赖冲突
# Ubuntu/Debian sudo apt --fix-broken install # CentOS/RHEL sudo dnf clean all sudo dnf update
清理包缓存
# Ubuntu/Debian sudo apt clean sudo apt autoclean # CentOS/RHEL sudo dnf clean all
性能优化
Swap配置
对于内存较小的系统,配置swap可以改善性能:
# 创建4GB swap文件
sudo fallocate -l 4G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
# 永久启用
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
资源限制
调整系统对打开文件数量的限制:
# 检查当前限制
ulimit -n
# 修改限制
sudo nano /etc/security/limits.conf
添加以下行:
* soft nofile 65535
* hard nofile 65535
参考资源
如有任何问题或建议,欢迎联系我交流讨论。