jenv 使用教程
项目介绍
jenv 是一个用于管理 Java 环境的工具,它允许用户在不同的 Java 版本之间轻松切换。通过 jenv,开发者可以在同一台机器上安装和管理多个 JDK 版本,并根据需要为不同的项目或目录设置不同的 Java 版本。
项目快速启动
安装 jenv
在 macOS 上,可以使用 Homebrew 安装 jenv:
brew install jenv
或者使用 MacPorts:
sudo port install jenv
在 Linux 上,可以从源代码安装:
git clone https://github.com/jenv/jenv.git ~/.jenv
配置 shell
jenv 需要在你的 shell 中初始化。以下是针对不同 shell 的配置方法:
Bash
echo 'export PATH="$HOME/.jenv/bin:$PATH"' >> ~/.bash_profile
echo 'eval "$(jenv init -)"' >> ~/.bash_profile
Zsh
echo 'export PATH="$HOME/.jenv/bin:$PATH"' >> ~/.zshrc
echo 'eval "$(jenv init -)"' >> ~/.zshrc
添加 Java 环境
假设你已经安装了某个 JDK 版本,可以通过以下命令将其添加到 jenv 中:
jenv add /Library/Java/JavaVirtualMachines/openjdk-8.jdk/Contents/Home
查看和管理 Java 版本
查看所有已添加的 Java 版本:
jenv versions
设置全局 Java 版本:
jenv global openjdk64-1.8.0.222
设置本地 Java 版本(针对当前目录):
jenv local openjdk64-1.8.0.222
应用案例和最佳实践
多项目环境管理
假设你有两个项目,一个需要 Java 8,另一个需要 Java 11。你可以通过 jenv 为每个项目设置不同的 Java 版本:
-
为项目 A 设置 Java 8:
cd /path/to/projectA jenv local openjdk64-1.8.0.222 -
为项目 B 设置 Java 11:
cd /path/to/projectB jenv local openjdk64-11.0.2
持续集成环境
在持续集成(CI)环境中,jenv 可以帮助你轻松切换不同的 Java 版本进行构建和测试。例如,在 Jenkins 中,你可以在不同的构建步骤中切换 Java 版本:
pipeline {
agent any
stages {
stage('Build with Java 8') {
steps {
sh 'jenv local openjdk64-1.8.0.222'
sh 'mvn clean install'
}
}
stage('Build with Java 11') {
steps {
sh 'jenv local openjdk64-11.0.2'
sh 'mvn clean install'
}
}
}
}
典型生态项目
Maven
Maven 是一个强大的项目管理和构建工具,与 jenv 结合使用可以更好地管理项目依赖和构建过程。通过 jenv 设置不同的 Java 版本,可以确保 Maven 项目在正确的 Java 环境中构建。
Gradle
Gradle 是一个灵活且高效的项目自动化工具,与 jenv 结合使用可以实现更细粒度的 Java 版本管理。通过 jenv 设置不同的 Java 版本,可以确保 Gradle 项目在正确的 Java 环境中构建和运行。
IntelliJ IDEA
IntelliJ IDEA 是一个流行的 Java 集成开发环境(IDE),与 jenv 结合使用可以实现无缝的 Java 版本切换。通过 jenv 设置不同的 Java 版本,可以在 IDE 中为不同的项目配置不同的 Java 环境。
通过以上教程,你可以快速上手并充分利用 jenv 管理你的 Java 环境。希望这些内容对你有所帮助!
Kimi-K2.5Kimi K2.5 是一款开源的原生多模态智能体模型,它在 Kimi-K2-Base 的基础上,通过对约 15 万亿混合视觉和文本 tokens 进行持续预训练构建而成。该模型将视觉与语言理解、高级智能体能力、即时模式与思考模式,以及对话式与智能体范式无缝融合。Python00- QQwen3-Coder-Next2026年2月4日,正式发布的Qwen3-Coder-Next,一款专为编码智能体和本地开发场景设计的开源语言模型。Python00
xw-cli实现国产算力大模型零门槛部署,一键跑通 Qwen、GLM-4.7、Minimax-2.1、DeepSeek-OCR 等模型Go06
PaddleOCR-VL-1.5PaddleOCR-VL-1.5 是 PaddleOCR-VL 的新一代进阶模型,在 OmniDocBench v1.5 上实现了 94.5% 的全新 state-of-the-art 准确率。 为了严格评估模型在真实物理畸变下的鲁棒性——包括扫描伪影、倾斜、扭曲、屏幕拍摄和光照变化——我们提出了 Real5-OmniDocBench 基准测试集。实验结果表明,该增强模型在新构建的基准测试集上达到了 SOTA 性能。此外,我们通过整合印章识别和文本检测识别(text spotting)任务扩展了模型的能力,同时保持 0.9B 的超紧凑 VLM 规模,具备高效率特性。Python00
KuiklyUI基于KMP技术的高性能、全平台开发框架,具备统一代码库、极致易用性和动态灵活性。 Provide a high-performance, full-platform development framework with unified codebase, ultimate ease of use, and dynamic flexibility. 注意:本仓库为Github仓库镜像,PR或Issue请移步至Github发起,感谢支持!Kotlin08
VLOOKVLOOK™ 是优雅好用的 Typora/Markdown 主题包和增强插件。 VLOOK™ is an elegant and practical THEME PACKAGE × ENHANCEMENT PLUGIN for Typora/Markdown.Less00