【Java11下载、安装、部署指南】

oracle jdk11下载

oracle jdk所有版本归档【archive】下载地址:
https://www.oracle.com/java/technologies/downloads/archive/

oracle jdk11下载地址:
https://www.oracle.com/java/technologies/javase/jdk11-archive-downloads.html

配置或修改window JAVA_HOME

idea 修改

在这里插入图片描述
在这里插入图片描述
Modules 也要对应修改,如果有的话
在这里插入图片描述

全局搜索<maven.compiler.source>

全局搜索<java.version>

<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>11</maven.compiler.source>
<maven.compiler.target>11</maven.compiler.target>

在有vm参数的地方加入这个

-XX:+IgnoreUnrecognizedVMOptions 

查看linux发行版本信息:

# 下面三个命令都行【推荐第一个】
cat /etc/os-release
lsb release -a
cat /etc/issue
#选择适合你的cpu架构,在Linux终端上使用命令 arch 查看Linux的cpu架构,
#区分cpu架构是x86_64(x64)还是arm (aarch64) 后面选择Linux jdk版本要用到
arch

输出结果:
NAME=“Ubuntu”
VERSION=“20.04.6 LTS (Focal Fossa)”
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME=“Ubuntu 20.04.6 LTS”
VERSION_ID=“20.04”
HOME_URL=“https://www.ubuntu.com/”
SUPPORT_URL=“https://help.ubuntu.com/”
BUG_REPORT_URL=“https://bugs.launchpad.net/ubuntu/”
PRIVACY_POLICY_URL=“https://www.ubuntu.com/legal/terms-and-policies/privacy-policy”
VERSION_CODENAME=focal
UBUNTU_CODENAME=focal

查找实际使用的 java 命令路径:

# Linux查找java在path中指定的目录
which java
# -l 会显示软链接,链接到/etc/alternatives/java
ls -lrt /usr/bin/java 
#找到java安装目录【原java8 安装目录/usr/lib/jvm/java-8-openjdk-amd64/jre】
ls -lrt /etc/alternatives/java
#新建或覆盖【删除后新建】原有软链接目录指向【如果不希望覆盖,去掉s】
sudo ln -sf /usr/local/jdk-11.0.2/bin/java /etc/alternatives/java

服务器docker搜索镜像【可跳过】

sudo docker search openjdk:11

要使用 docker search 命令搜索Docker Hub上的OpenJDK 11镜像,你可以运行以下命令:docker search openjdk:11
这条命令会搜索Docker Hub上带有关键词openjdk:11的所有镜像,并显示它们的星级、描述和是否官方等内容。由于Docker Hub的搜索结果可能随时间和开发者贡献而变化,你可能还会看到诸如adoptopenjdk, oraclelinux, azul/zulu-openjdk等不同厂商或社区维护的OpenJDK 11镜像。你可以根据自己的需求选择合适的镜像进行下载使用。例如:

docker pull openjdk:11 # 获取官方提供的OpenJDK 11镜像(如果有的话)
docker pull adoptopenjdk/openjdk11 # 获取AdoptOpenJDK社区的OpenJDK 11镜像
docker pull azul/zulu-openjdk:11 # 获取Azul Systems提供的Zulu OpenJDK 11镜像

服务器docker 安装java11

#【这个网页现在需要翻墙】 https://hub.docker.com/_/openjdk/tags?page=1&name=11-jre
# docker安装openjdk11
docker pull openjdk:11-jre
# 查看docker安装过的包
sudo docker image ls 

服务器下载openjdk11

下载地址1【华为云镜像】:https://mirrors.huaweicloud.com/openjdk/
下载地址2【openjdk官网】:https://jdk.java.net/archive/

使用wget在线下载

# 这里为openjdk-11.0.2
# 下载到指定目录【/usr/local】下:
wget -P /usr/local https://mirrors.huaweicloud.com/openjdk/11.0.2/openjdk-11.0.2_linux-x64_bin.tar.gz

解压openjdk-11.0.2_linux-x64_bin.tar.gz

# 解压openjdk-11.0.2_linux-x64_bin.tar.gz,并将解压得到的内容放置在/usr/local/目录下
tar -zxvf openjdk-11.0.2_linux-x64_bin.tar.gz -C /usr/local/

修改Linux系统环境变量并将JDK11加入PATH

步骤一:编辑 /etc/profile

打开 /etc/profile 文件以进行编辑:

# vi /etc/profile
# 在文件末尾添加两行:
export JAVA_HOME=/usr/local/jdk-11.0.2
export PATH=$JAVA_HOME/bin:$PATH
#esc #:wq 保存并退出

步骤三:重新加载环境变量配置

source /etc/profile

步骤四:验证 Java 版本运行 java --version

检查 Java 版本是否已更新为 openjdk11:

java --version

输出输出以下结果表示成功:
openjdk 11.0.2 2019-01-15
OpenJDK Runtime Environment 18.9 (build 11.0.2+9)
OpenJDK 64-Bit Server VM 18.9 (build 11.0.2+9, mixed mode)

可能出现的潜在问题【没有则跳过】

问题描述:尽管按照上述步骤操作,Java 版本仍显示为 Java 8,未成功切换至 Java 11。

可能的原因:PATH的路径是按顺序加载的,找到第一个就不再找了

  1. 确认 /usr/local/jdk-11.0.12 是否为正确的 JDK 11 安装路径,且该路径下存在 bin 目录及 java 可执行文件。

  2. 确保在新的 shell 会话中应用环境变量更改,可通过注销并重新登录,或打开新的终端窗口检查。

  3. 检查其他环境变量设置,如 .bashrc 或 .bash_profile 等个人配置文件中是否也有影响 JAVA_HOME 或 PATH 的设置。

  4. 检查 PATH 变量中 JAVA_HOME/bin 是否处于正确的位置,即在其它Java 8路径之前。

  5. 如果有必要,清理可能存在的命令缓存,并确保新版本的JDK确实已成功安装。在排查问题时,可以执行以下命令以辅助判断:

  6. 显示已设置的 JAVA_HOME 和 PATH 变量值:

    echo $JAVA_HOME
    echo $PATH
    

打包部署-查看docker容器启动日志

查看docker容器启动日志 -f 后面是容器名或容器Id

# 该命令将展示my-container的最后50行日志,并实时跟踪更新。
sudo docker logs -f --tail 1000 my-container

apt 是一个ubuntu命令行软件包管理器

apt 2.0.9 (amd64)

dpkg:Debian基础包管理工具,用于安装、卸载和管理.deb格式的软件包,
apt:高级包装工具 (Advanced Package TooI),基于dpkg之上,提供了更强大的软件包管理功能,如自动解决依赖关系、下载和安装软件包。

apt [options] 命令

apt 是一个命令行软件包管理器,提供搜索、管理和查询软件包信息的命令。
搜索、管理和查询软件包信息的命令。
它还提供了 apt-get、和 apt-cache 交互式使用的选项。

最常用的命令
list - 根据软件包名称列出软件包
search - 在软件包描述中搜索
show - 显示软件包详细信息
install - 安装软件包
reinstall - 重新安装软件包
remove - 删除软件包
autoremove - 自动删除所有未使用的软件包
update - 更新可用软件包列表
upgrade - 通过安装/升级软件包来升级系统
full-upgrade - 通过删除/安装/升级软件包来升级系统
edit-sources - 编辑源信息文件
satisfy - 满足依赖关系字符串

有关可用命令的更多信息,请参见 apt(8)。
配置选项和语法详见 apt.conf(5)。
有关如何配置源的信息,请参见 sources.list(5)。
软件包和版本选择可通过 apt_preferences(5) 表达。
安全详细信息请参见 apt-secure(8)。本 APT 拥有超级牛的力量。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/557323.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【文末附gpt升级4.0方案】FastGPT详解

FastGPT知识库结构讲解 FastGPT是一个基于GPT模型的知识库&#xff0c;它的结构可以分为以下几个部分&#xff1a; 1. 数据收集&#xff1a;FastGPT的知识库是通过从互联网上收集大量的文本数据来构建的。这些数据可以包括维基百科、新闻文章、论坛帖子等各种类型的文本。 2…

河北库卡机器人KR500电源模块故障,该如何处理?

库卡机器人KR500电源模块常见故障类型及维修方法 1&#xff09;电源模块故障指示灯亮 故障现象&#xff1a;库卡机器人KR500电源模块上的故障指示灯亮起&#xff0c;机器人不能正常工作。 维修方法&#xff1a;根据故障指示灯的闪烁频率或颜色判断具体的故障类型。然后&#xf…

Vue3学习记录(七)--- 组合式API之指令和插件

一、内置指令 1、v-memo ​ 该指令是Vue3的v3.2版本之后新增的指令&#xff0c;用于实现组件模板缓存&#xff0c;优化组件更新时的性能。该指令接收一个固定长度的依赖值数组&#xff0c;在组件进行更新渲染时&#xff0c;如果数组中的每个依赖值都与上一次渲染时的值相同&a…

【php基础】输出、变量、布尔类型、字符串

php基础补充 1. 输出2.和"的区别3.变量3.1变量的命名规则3.2 两个对象指向同一个值3.3 可变变量 4.变量的作用域5. 检测变量6. 布尔类型7.字符串定义与转义8.字符串常用函数9.常量 1. 输出 echo: 输出 print: 输出&#xff0c;输出成功返回1 print_r(): 输出数组 var_dum…

AndroidStudio 由dolphin升级到giraffe,出现“gradle project sync failed“

1 现象描述 将AS由之前的dolphin版本升级到giraffe之后&#xff0c;接着打开以前的Android project&#xff0c;出现了"Gradle project sync failed…"的异常提示&#xff0c;在build面板中并没有出现project sync过程中报错的日志。 异常提示如下图所示&#xff1a…

【机器学习-07】逻辑回归(Logistic Regression)的介绍和python实现

Logistic Regression 虽然被称为回归&#xff0c;但其实际上是分类模型&#xff0c;并常用于二分类。主要用来表示某件事情发生的可能性&#xff0c;因此因变量的范围在 0 和 1 之间。Logistic Regression 因其简单、可并行化、可解释强深受工业界喜爱。例如&#xff0c;探讨引…

深入了解 Postman Test 校验的使用方法

Postman 是一个广泛使用的 API 开发工具&#xff0c;它允许开发人员测试 API 的各个方面&#xff0c;包括请求、响应、身份验证等等&#xff0c;其中最常用的功能之一就是 Test 校验。那今天就一起来看看 Postman 的 Test 校验该如何使用。 Test 校验是什么&#xff1f; Test…

借教室与差分

原题 题目描述 在大学期间&#xff0c;经常需要租借教室。 大到院系举办活动&#xff0c;小到学习小组自习讨论&#xff0c;都需要向学校申请借教室。 教室的大小功能不同&#xff0c;借教室人的身份不同&#xff0c;借教室的手续也不一样。  面对海量租借教室的信息&…

Python程序设计 基本数据类型及操作

1.计算一元二次方程的根 编写一个计算一元二次方程的根的小程序。 一元二次方程经过整理都可化成一般形式axbxc0&#xff08;a≠0&#xff09;。 其中ax叫作二次项&#xff0c;a是二次项系数&#xff1b;bx叫作一次项&#xff0c;b是一次项系数&#xff1b;c叫作常数项 。 由一…

Android Launcher开发注意事项

在开发Android Launcher时&#xff0c;需要关注性能、用户体验、权限管理、兼容性等方面&#xff0c;同时遵循相关的开发者政策和最佳实践。有几个重要的注意事项&#xff0c;希望对大家有所帮助。北京木奇移动技术有限公司&#xff0c;专业的软件外包开发公司&#xff0c;欢迎…

【精彩回顾】百度智能云千帆产品3月21日发布会

3月21日&#xff0c;AI Cloud Day&#xff1a;百度智能云千帆产品发布会在北京举办。会议聚焦百度智能云千帆大模型平台最新进展&#xff0c;分享思考与实践。百度智能云在发布会期间宣布&#xff1a; >>满足企业“效价比”核心诉求&#xff0c;千帆ModelBuilder大模型服…

牛客NC196 编辑距离(一)【较难 DFS/DP,动态规划,样本对应模型 Java,Go,PHP】

题目 题目链接&#xff1a; https://www.nowcoder.com/practice/6a1483b5be1547b1acd7940f867be0da 思路 编辑距离问题 什么是两个字符串的编辑距离&#xff08;edit distance&#xff09;&#xff1f;给定字符串s1和s2&#xff0c;以及在s1上的如下操作&#xff1a;插入&…