当前位置: 首页 > news >正文

Java、Python、NodeJS等开发环境安装及配置镜像加速到国内源

文章目录

  • Java
    • 1.我应该用哪个版本的JDK?
      • 1.1 版本推荐
      • 1.2 发行版推荐
      • 1.3 下载JDK
      • 1.4 ubuntu版本
      • 1.5 JDK镜像选择
    • 2.Windows
      • 2.1 scoop方式安装JDK
    • 3.Linux
      • 3.1 apt方式安装JDK
        • 3.1.1 切换JDK
        • 3.1.2 验证版本
        • 3.1.3 原理
  • Python
    • 1.Windows
      • 1.1 scoop方式安装Python
      • 1.2 uv方式安装Python(推荐)
    • 2.Linux
      • 2.1 apt方式安装Python
        • 2.1.1 配置版本切换
        • 2.1.2 切换Python
        • 2.1.3 验证版本
      • 2.2 uv方式安装Python(推荐)
    • 3.uv方式说明
      • 3.1 查看版本列表
      • 3.2 初始化项目
      • 3.3 添加依赖
      • 3.4 查看依赖
      • 3.5 同步依赖
  • NodeJS
    • 1.Windows
      • 1.1 scoop方式安装NodeJS
      • 1.2 nvm方式安装NodeJS(推荐)
    • 2.Linux
      • 2.1 nvm方式安装NodeJS(推荐)
    • 3.nvm方式说明
      • 3.1 安装版本
      • 3.2 查看版本列表
      • 3.3 切换版本
      • 3.4 验证版本
  • 配置国内源
    • 1.linuxmirrors
    • 2.pip国内源
    • 3.maven和gradle国内源
    • 4.npm
    • 5.apt国内源(backup)
    • 6.uv国内源

Java

从图中可以看出,下载8/11/17三个版本即可,其他版本按需下载。

从图中可以看出,除了Oracle外,Amazon和Eclipse Adoptium都挺好。

来源:https://newrelic.com/resources/report/2024-state-of-the-java-ecosystem

1.我应该用哪个版本的JDK?

https://whichjdk.com/
首选Adoptium Eclipse Temurin 21,且需确保本地、CI(持续集成)和生产环境版本一致。

1.1 版本推荐

JDK VersionTypeRelease DateHighlightsRecommendation
8LTS03/2014LambdasLast LTS version under previous release model. Free updates by Oracle ended, but still maintained by others. Upgrade to 21 now!
9Feature09/2017ModulesNew release model was introduced. EOL. Upgrade to 21 now!
10Feature03/2018varEOL. Upgrade to 21 now!
11LTS09/2018New HTTP ClientUpgrade to 21 now!
12Feature03/2019EOL. Upgrade to 21 now!
13Feature09/2019EOL. Upgrade to 21 now!
14Feature03/2020Switch expressionsEOL. Upgrade to 21 now!
15Feature09/2020Text blocksEOL. Upgrade to 21 now!
16Feature03/2021RecordsEOL. Upgrade to 21 now!
17LTS09/2021Sealed ClassesIt’s time to upgrade to 21.
18Feature03/2022UTF-8 by DefaultEOL. Upgrade to 21 now!
19Feature09/2022EOL. Upgrade to 21 now!
20Feature03/2023EOL. Upgrade to 21 now!
21LTS09/2023Pattern Matching, Virtual ThreadsCurrent LTS version.
22Feature03/2024Stick with 21.
23Feature09/2024Markdown Documentation CommentsStick with 21.
24Feature03/2025Ahead-of-Time Class LoadingStick with 21.

1.2 发行版推荐

  • Adoptium Eclipse Temurin:Eclipse 基金会项目,高质量、 vendor-neutral(厂商中立)、经 TCK 测试,支持 LTS,强烈推荐。
  • Amazon Corretto:AWS 提供,适合在 AWS 的 Amazon Linux 2 上运行,推荐。

1.3 下载JDK

https://adoptium.net/zh-CN/temurin/releases?version=8&os=any&arch=any

1.4 ubuntu版本

https://releases.ubuntu.com/

  • Ubuntu 24.04.3 LTS (Noble Numbat) ›
  • Ubuntu 22.04.5 LTS (Jammy Jellyfish) ›
  • Ubuntu 20.04.6 LTS (Focal Fossa) ›

1.5 JDK镜像选择

https://hub.docker.com/_/eclipse-temurin

2.Windows

2.1 scoop方式安装JDK

scoopinstalltemurin8-jdk temurin17-jdk temurin21-jdk# 不建议scoopinstallcorretto8-jdk corretto17-jdk corretto21-jdk

3.Linux

3.1 apt方式安装JDK

aptinstallsoftware-properties-common-yaptinstallopenjdk-8-jdk openjdk-11-jdk openjdk-17-jdk openjdk-21-jdk-y
3.1.1 切换JDK
update-alternatives--configjava
3.1.2 验证版本
java-version
3.1.3 原理
# 入口: /usr/bin/java -> /etc/alternatives/java*ll /usr/bin/java# 切换: /etc/alternatives/java -> /usr/lib/jvm/java-21-openjdk-amd64/bin/java*ll /etc/alternatives/java# 版本目录:/usr/lib/jvmll /usr/lib/jvm

Python

1.Windows

1.1 scoop方式安装Python

scoopinstallpython38 python39 python310 python311 python312 python313 python314

1.2 uv方式安装Python(推荐)

scoopinstalluv

2.Linux

2.1 apt方式安装Python

aptinstallsoftware-properties-common-yadd-apt-repository ppa:deadsnakes/ppaaptinstallpython{3.7,3.8,3.9,3.10,3.11,3.12,3.13,3.14}-y
2.1.1 配置版本切换
update-alternatives--install/usr/bin/python python /usr/bin/python2.71update-alternatives--install/usr/bin/python python /usr/bin/python3.72update-alternatives--install/usr/bin/python python /usr/bin/python3.83update-alternatives--install/usr/bin/python python /usr/bin/python3.94update-alternatives--install/usr/bin/python python /usr/bin/python3.105update-alternatives--install/usr/bin/python python /usr/bin/python3.116update-alternatives--install/usr/bin/python python /usr/bin/python3.127update-alternatives--install/usr/bin/python python /usr/bin/python3.138update-alternatives--install/usr/bin/python python /usr/bin/python3.149
2.1.2 切换Python
update-alternatives--configpython
2.1.3 验证版本
python--version

2.2 uv方式安装Python(推荐)

curl-LsSfhttps://astral.sh/uv/install.sh|sh

wget-qO- https://astral.sh/uv/install.sh|sh
installing to /home/d/.local/bin uv uvx everything's installed! To add $HOME/.local/bin to your PATH, either restart your shell or run: source $HOME/.local/bin/env (sh, bash, zsh) source $HOME/.local/bin/env.fish (fish)

来源:https://docs.astral.sh/uv/getting-started/installation/

3.uv方式说明

uv pythoninstallpython3.7 python3.8 python3.9 python3.10 python3.11 python3.12 python3.13 python3.14

3.1 查看版本列表

uv python list

3.2 初始化项目

uv init

3.3 添加依赖

uvaddrequests

3.4 查看依赖

uv tree

3.5 同步依赖

uvsync

NodeJS

1.Windows

1.1 scoop方式安装NodeJS

scoopinstallnodejs16 nodejs17 nodejs18 nodejs19 nodejs20 nodejs21 nodejs22 nodejs23

1.2 nvm方式安装NodeJS(推荐)

scoopinstallnvm

2.Linux

2.1 nvm方式安装NodeJS(推荐)

curl-o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh|bash

wget-qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh|bash
=> Appending nvm source string to /home/d/.zshrc => Appending bash_completion source string to /home/d/.zshrc => Close and reopen your terminal to start using nvm or run the following to use it now: export NVM_DIR="$HOME/.nvm" [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm [ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion

来源:https://github.com/nvm-sh/nvm?tab=readme-ov-file#install–update-script

3.nvm方式说明

3.1 安装版本

nvminstall23nvminstall22nvminstall21nvminstall20nvminstall19nvminstall18nvminstall17nvminstall16

3.2 查看版本列表

nvm list

3.3 切换版本

nvm use23

3.4 验证版本

node-v

配置国内源

1.linuxmirrors

https://linuxmirrors.cn/

  • gitee
bash<(curl-sSLhttps://gitee.com/SuperManito/LinuxMirrors/raw/main/ChangeMirrors.sh)
  • default
bash<(curl-sSLhttps://linuxmirrors.cn/main.sh)
  • github
bash<(curl-sSLhttps://raw.githubusercontent.com/SuperManito/LinuxMirrors/main/ChangeMirrors.sh)
  • auto推荐
    https://github.com/SuperManito/LinuxMirrors/blob/main/docs/use/index.md
bash<(curl-sSLhttps://gitee.com/SuperManito/LinuxMirrors/raw/main/ChangeMirrors.sh)\--sourcemirrors.tuna.tsinghua.edu.cn\--protocolhttp\--use-intranet-sourcefalse\--install-epeltrue\--backuptrue\--upgrade-softwarefalse\--clean-cachefalse\--ignore-backup-tips
  • aliyun会报错(应该是请求太大被封了)

https://mirrors.aliyun.com/ubuntu

bash<(curl-sSLhttps://gitee.com/SuperManito/LinuxMirrors/raw/main/ChangeMirrors.sh)\--sourcemirrors.aliyun.com\--protocolhttp\--use-intranet-sourcefalse\--install-epeltrue\--backupfalse\--upgrade-softwarefalse\--clean-cachefalse\--ignore-backup-tips
# 403 Forbidden You don't have permission to access the URL on this server. denied by IP ACL = blacklist --- Powered by Tengine CDN Request Id: 7c5fbe2b17549643434472542e
  • tencent(不支持pve)
    https://mirrors.tencent.com/proxmox/debian/pve
bash<(curl-sSLhttps://gitee.com/SuperManito/LinuxMirrors/raw/main/ChangeMirrors.sh)\--sourcemirrors.tencent.com\--protocolhttp\--use-intranet-sourcefalse\--install-epeltrue\--backupfalse\--upgrade-softwarefalse\--clean-cachefalse\--ignore-backup-tips
E: The repository 'http://mirrors.tencent.com/proxmox/debian/pve bookworm Release' does not have a Release file.

2.pip国内源

  • 清华贼快(推荐)
    https://mirrors.tuna.tsinghua.edu.cn/help/pypi/

  • 腾讯(备用)
    https://mirrors.cloud.tencent.com/pypi/simple/

  • 阿里贼慢还缺包
    https://developer.aliyun.com/mirror/pypi

  • 豆瓣重定向到腾讯
    https://pypi.doubanio.com/simple/

python-mpipinstall-ihttps://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple--upgradepip pip configsetglobal.index-url https://mirrors.cloud.tencent.com/pypi/simple/ pip configsetglobal.extra-index-url"https://mirrors.cloud.tencent.com/pypi/simple/ https://mirrors.aliyun.com/pypi/simple"
# 阿里有时候缺包 (venv) d@d:~/SourceCode/test-gpu$ pip3 install torch torchvision torchaudio --index-url https://developer.aliyun.com/mirror/pypi Looking in indexes: https://developer.aliyun.com/mirror/pypi ERROR: Could not find a version that satisfies the requirement torch (from versions: none) ERROR: No matching distribution found for torch # 豆瓣重定向到腾讯了 (venv) d@d:~/SourceCode/test-gpu$ pip3 install torch torchvision torchaudio --index-url https://pypi.doubanio.com/simple/ Looking in indexes: https://pypi.doubanio.com/simple/ Collecting torch Downloading https://mirrors.cloud.tencent.com/pypi/packages/d1/35/e8b2daf02ce933e4518e6f5682c72fd0ed66c15910ea1fb4168f442b71c4/torch-2.5.1-cp311-cp311-manylinux1_x86_64.whl (906.5 MB)

3.maven和gradle国内源

参考:https://developer.aliyun.com/mvn/guide
.m2/settings.xml

<mirrors><mirror><id>aliyunmaven</id><mirrorOf>central</mirrorOf><name>阿里云公共仓库</name><url>https://maven.aliyun.com/repository/public</url></mirror><mirror><id>pentaho-public</id><name>Pentaho Public</name><mirrorOf>*</mirrorOf><url>http://nexus.pentaho.org/content/groups/omni/</url></mirror></mirrors>

\init.d\init.gradle

allprojects{repositories{mavenLocal()maven{name"Alibaba";url"https://maven.aliyun.com/repository/public"}mavenCentral()}buildscript{repositories{maven{name"Alibaba";url'https://maven.aliyun.com/repository/public'}}}}

4.npm

#npm config set registry https://registry.npm.taobao.orgnpmconfigsetregistry https://registry.npmmirror.comnpmupdate

5.apt国内源(backup)

#--quiet#-O filewget-qO- https://gitee.com/duhongming/shell-script/raw/master/mirrors/apt-sources.sh|bash

6.uv国内源

cat~/.config/uv/uv.toml[pip]index-url="https://mirrors.aliyun.com/pypi/simple/"extra-index-url=["https://pypi.org/simple"]
http://www.jsqmd.com/news/527690/

相关文章:

  • 2026年别墅电梯厂家推荐:室内电梯/老旧小区电梯/液压式电梯/载货电梯专业供应 - 品牌推荐官
  • nlp_structbert_sentence-similarity_chinese-large 在AIGC内容审核中的应用:生成文本与违规库相似度筛查
  • 网络工程师面试必看:如何用eNSP设计一个高可用的企业网?从VRRP、MSTP到防火墙策略详解
  • 2026年企业选型必看:五大geo公司技术底牌拆解与精准适配指南 - 品牌推荐
  • 如何构建Storm与HBase集成的实时NoSQL数据处理方案:完整指南
  • 有源钳位型三电平(ANPC)逆变器SVPWM闭环仿真探究
  • 终极HoloCubic智能家居集成指南:如何通过MQTT协议实现物联网设备互联
  • 2026年冷热冲击试验机行业洞察:主流品牌、市场格局与发展趋势 - 品牌推荐大师
  • 线段树区间查询区间修改函数
  • CentOS 7内网NTP服务器搭建全攻略:从零配置到多节点同步
  • VideoAgentTrek-ScreenFilter实时演示:低延迟直播流过滤系统搭建
  • 拒绝内耗,Shopee轻出海模式,轻门槛、低成本、高效率出海。 - 跨境小媛
  • Openclaw升级
  • 如何3秒获取百度网盘提取码?智能解析工具终极使用指南
  • 终极instant.page代码压缩与优化指南:快速提升网站性能的10个技巧
  • CLIP-GmP-ViT-L-14图文匹配工具参数详解:图像/文本编码器输出维度与logits归一化
  • 2025-2026年北京全屋定制品牌推荐:别墅整装一体化解决方案与真实用户反馈汇总 - 十大品牌推荐
  • ejabberd移动端集成终极指南:iOS和Android客户端开发全攻略
  • PostgreSQL高可用实战:pgpool-II主备切换与VIP漂移全流程解析
  • Himalaya命令行邮件客户端深度解析与实战部署指南
  • Storm与Hive集成终极指南:实现实时SQL查询与大数据分析 [特殊字符]
  • 【MCP Sampling调用流性能生死线】:实测对比6种采样策略(Probabilistic/Rate-Limiting/Adaptive)在百万TPS下的P99延迟差异
  • iOS应用引导页面终极适配指南:兼容不同版本与屏幕的完整解决方案
  • 系统优化工具革新:Windows Cleaner全方位实战指南——3大痛点解决与5步优化流程
  • 3秒解锁百度网盘提取码:baidupankey智能解析工具全攻略
  • Detekt终极指南:如何在CI/CD流程中快速集成代码质量检查
  • 别再只用Matplotlib了!用CloudCompare和numpy玩转3D点云可视化(附完整数据转换流程)
  • 探索LBM在固体融化与固液相变研究中的奇妙之旅
  • CosyVoice-300M-25Hz企业级应用:智能客服语音回复生成
  • ES6新特性终极指南:10个常见错误及完美解决方案