Linux/mac 一键安装java开发工具

356 阅读2分钟

在Java开发中,有一些工具可以帮助你管理Java开发工具包(JDK)的版本。以下是一些常见的工具:

  1. SDKMAN!:

    • 优势: 支持多种开发工具,包括Java、Maven、Gradle、Scala等。
    • 安装: 参考SDKMAN!官网上的安装指南。
    • 使用: 使用命令sdk install java安装Java,并使用sdk use java <version>切换版本。
  2. asfd-vm:(推荐)

    • 优势: 通用的版本管理工具,支持多种语言和工具。
    • 安装: 参考asdf-vm GitHub仓库上的安装指南。
    • 使用: 使用命令asdf plugin add java添加Java插件,然后使用asdf install java <version>安装Java,并使用asdf global java <version>切换全局Java版本。

一. 安装SDKMAN!:

1. 安装SDKMAN!:

  • 打开终端并运行以下命令来安装SDKMAN!:

    curl -s "https://get.sdkman.io" | bash
    

    wget -q -O - "https://get.sdkman.io" | bash
    

2. 初始化SDKMAN!:

  • 在终端中运行以下命令,以加载SDKMAN!到当前Shell会话:

    source "$HOME/.sdkman/bin/sdkman-init.sh"
    

3. 安装Java:

  • 使用以下命令安装Java:

    sdk install java
    
  • 这将安装最新的Java版本。你也可以使用以下命令安装特定版本:

    sdk install java <version>
    

4. 切换Java版本:

  • 使用以下命令切换全局Java版本:

    sdk use java <version>
    

5. 安装其他工具:

  • 除了Java之外,你还可以使用SDKMAN!安装其他开发工具,例如Maven、Gradle等:

    sdk install maven
    sdk install gradle
    

6. 切换其他工具版本:

  • 使用类似的命令来切换其他工具的版本:

    sdk use maven <version>
    sdk use gradle <version>
    

7. 查看当前安装版本:

```
sdk list java | grep installed
sdk curren  gradle
```

SDKMAN!简化了开发环境中工具版本的管理过程,使得在不同项目或系统中切换版本变得更加轻松。确保在每个新的终端会话中通过source命令加载SDKMAN!以确保其可用。

二. 安装 asfd-vm

  1. 克隆 asdf 仓库: 打开终端,并运行以下命令将 asdf 仓库克隆到你的主目录下:

    git clone https://github.com/asdf-vm/asdf.git ~/.asdf --branch v0.8.0
    

    这个命令会将仓库克隆到 ~/.asdf 目录,并检出指定的版本(在这里是 v0.8.0)。你可以在 asdf-vm GitHub 发行版页面查看最新的版本。

  2. 将 asdf 添加到你的 shell 配置文件: 根据你的 shell(bash、zsh 等),你需要将以下行添加到你的 shell 配置文件中。如果你使用的是 Bash,通常是 ~/.bashrc~/.bash_profile。如果是 Zsh,则是 ~/.zshrc

    echo '. $HOME/.asdf/asdf.sh' >> ~/.bashrc
    echo '. $HOME/.asdf/completions/asdf.bash' >> ~/.bashrc
    

    如果你使用 Zsh,请在上述命令中将 .bashrc 替换为 .zshrc

  3. 重新启动你的 shell 或运行 asdf.sh 脚本: 在添加行到配置文件后,要么重新启动终端,要么运行:

    source ~/.bashrc   # 如果你使用 Zsh,则是 source ~/.zshrc
    

    这将在当前 shell 会话中加载 asdf。

  4. 安装依赖项: 安装操作系统所需的依赖项。例如,在 Ubuntu 上,你可能需要运行:

    sudo apt-get install curl git
    

    根据你的操作系统,参考 asdf-vm 文档获取其他可能的依赖项。

  5. 验证安装: 运行以下命令验证 asdf 是否安装成功:

    asdf --version
    

    这应该显示你所安装的 asdf 版本。

2. 安装 Java:

在终端中运行以下命令添加 asdf 的 Java 插件:

安装java插件:

asdf plugin-add java https://github.com/halcyon/asdf-java.git 
asdf list-all java 
asdf list java 
asdf install java zulu-8.68.0.21<version> 
asdf global java zulu-8.68.0.21<version>
asdf current java

添加java_home

vi /etc/profile

export JAVA_HOME=$(dirname $(dirname $(asdf which java)))

export PATH=$JAVA_HOME/bin:$PATH

安装maven插件:

asdf plugin-add maven https://github.com/halcyon/asdf-maven.git
asdf install maven 3.3.3
asdf global maven 3.3.3
mvn -v

安装npm插件:

asdf plugin-add nodejs https://github.com/asdf-vm/asdf-nodejs.git
asdf plugin-add npm https://github.com/asdf-vm/asdf-npm.git
asdf install nodejs 14.17.4
asdf global nodejs 14.17.4
node -v
npm -v

以上命令中,<version> 应该替换为具体的 JDK 版本号,例如 openjdk-11.0.12。你可以根据需要使用上述命令查询、安装、设置和管理 JDK 版本。

安装mysql插件:

asdf plugin-add nodejs https://github.com/yun81911/asdf-mysql.git
asdf list-all msyql 
asdf install mysql 5.7.10
asdf global mysql 5.7.10

安装python插件:

asdf plugin-add python https://github.com/danhper/asdf-python.git
asdf list-all python
asdf install python 3.5.10
asdf global python 3.5.10
python
python -V

以上安装可能失败、请参考下面方式

  1. 清除缓存: 删除 ~/.asdf/downloads 目录中的 MySQL 下载缓存,然后重新运行安装命令:

    rm -rf ~/.asdf/downloads/mysql-5.7.10.tar.gz
    asdf install mysql 5.7.10
    
  2. 使用 HTTPS 克隆插件: 使用 HTTPS 克隆 MySQL 插件,有时使用 git 协议可能导致下载问题:

    git clone  https://github.com/yun81911/asdf-mysql.git  ~/.asdf/plugins/mysql
    
  3. 手动下载并安装: 手动下载 MySQL 5.7.10 的压缩包,然后手动解压缩到 ~/.asdf/installs/mysql/5.7.10 目录:

    mkdir -p ~/.asdf/installs/mysql/5.7.10
    cd ~/.asdf/installs/mysql/5.7.10
    wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.10-linux-glibc2.5-x86_64.tar.gz
    tar -zxvf mysql-5.7.10-linux-glibc2.5-x86_64.tar.gz --strip-components=1
    asdf reshim mysql 5.7.10
    

    注意:确保下载的文件是正确的 MySQL 版本。

asdf-vm 是一个通用的版本管理工具,支持多种语言和工具。以下是 asdf-vm 支持的一些常见工具:

  1. 编程语言:

    • Ruby
    • Node.js
    • Python
    • PHP
    • Elixir
    • Erlang
    • Java
    • Kotlin
    • Rust
    • Scala
    • Clojure
    • Groovy
    • R
  2. 开发工具:

    • Maven
    • Gradle
    • Leiningen
    • SBT (Scala Build Tool)
    • Ant
  3. 数据库:

    • PostgreSQL
    • MySQL
    • Redis
    • SQLite
  4. Web服务器:

    • Apache HTTP Server
    • Nginx
  5. 框架和库:

    • Elasticsearch
    • Kafka
    • RabbitMQ
    • Git
  6. 其他工具:

    • Terraform

    • Helm

    • Docker

    • Kubectl