jdk9之后springboot项目访问外置jar包配置

启动命令增加

--add-opens java.base/jdk.internal.loader=ALL-UNNAMED

解释
--add-opens java.base/jdk.internal.loader=ALL-UNNAMED 是 Java 9 引入的一个命令行选项,用于解决模块化系统(Module System)中的模块访问限制问题。

在 Java 9 中引入了模块系统,这使得 Java 应用程序能够被划分为模块,每个模块都可以指定其对其他模块的可访问性。模块系统引入了更严格的访问控制以提高安全性和封装性。

java.base 是 Java 平台的基本模块,jdk.internal.loader 是该模块中的一个包,它包含了 Java 类加载器(ClassLoader)的内部实现。在 Java 9 中,一些 JDK 内部的 API 和实现细节被声明为不公开(privateinternal),因此它们在默认情况下对于模块外部是不可访问的,即使是在同一个 JDK 中的不同模块也不能直接访问。

--add-opens 是一个命令行选项,用于解除模块的访问限制,允许指定模块向其他模块开放特定的包的访问权限。在这个例子中,java.base 模块下的 jdk.internal.loader 包会向所有未命名模块(ALL-UNNAMED)开放,允许未命名模块中的代码访问 jdk.internal.loader 包中的内容。

这种方式是一种权宜之计,可能会绕过模块化系统的限制并使一些非公开的 API 可以被访问。然而,这也可能会导致代码的不稳定性和不可移植性,因为它依赖于 JDK 内部的细节,可能会在将来的 JDK 版本中发生变化。因此,使用 --add-opens 命令行选项应当谨慎,并尽量避免在生产环境中使用,以确保代码的健壮性和可维护性。

jdk11不配置是不是可以访问外置jar包?
在 JDK 11 中,默认情况下是不允许访问 JDK 内部的一些非公开 API 或模块的私有内容的。这是因为 JDK 9 引入了模块系统,为了提高安全性和封装性,限制了对 JDK 内部的一些API的直接访问。

如果你的应用程序依赖于某些 JDK 内部的非公开 API 或模块的私有内容,没有显式地打开这些模块的话,默认情况下是无法访问这些非公开 API 或模块的私有内容的。

为了解决这个问题,可以通过使用 --add-opens 参数,打开指定模块对其他模块私有内容的访问权限。在你的应用程序中,如果需要访问 JDK 内部的某些模块内容,你可能需要使用 --add-opens 或者其他类似的命令来显式地打开这些模块的权限。

如果你的应用程序不依赖于 JDK 内部的非公开 API 或模块的私有内容,而只是要访问外部的 jar 包,通常不需要额外的配置或者权限设置。一般来说,外部的 jar 包是可以被访问的,只要你正确地将它们添加到你的类路径中或者在模块路径中引入它们即可。

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

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

相关文章

013、方法

1. 方法和函数的区别 方法与函数十分相似:它们都使用fn关键字及一个名称来进行声明;它们都可以拥有参数和返回值;另外,它们都包含了一段在调用时执行的代码。 但是,方法与函数依然是两个不同的概念,因为方法…

如何压缩图片?电脑图片压缩的方法

如果图片体积过大不仅会占用过多的内存,还容易在平时处理和上传的时候被限制,传输起来也比较慢,这个时候最简单的方法就是通过专业的图片处理工具压缩图片大小,现如今有许多在线处理工具可以选择,今天分享的压缩图就是…

模型融合之模型堆叠

一、理论 模型堆叠(Model Stacking)是一种集成学习的方法,其本质是将多个基学习器(Individual Learner)的预测结果作为新的特征,再训练一个元学习器(Meta Learner)来进行最终的预测。…

【JUC的四大同步辅助类】

文章目录 一、CountDownLatch二、CyclicBarrier三、Semaphore四、Phaser 提示:以下是本篇文章正文内容,下面案例可供参考 一、CountDownLatch CountDownLatch如同火箭发射,计数只能不断减减,当到达0时即发射 场景示例&#xff1…

案例089:基于微信小程序的校园综合服务平台设计与实现

文末获取源码 开发语言:Java 框架:SSM JDK版本:JDK1.8 数据库:mysql 5.7 开发软件:eclipse/myeclipse/idea Maven包:Maven3.5.4 小程序框架:uniapp 小程序开发软件:HBuilder X 小程序…

ALSA学习(5)——ASoC架构中的Machine

参考博客:https://blog.csdn.net/DroidPhone/article/details/7231605 (以下内容皆为原博客转载) 文章目录 一、注册Platform Device二、注册Platform Driver三、初始化入口soc_probe() 一、注册Platform Device ASoC把声卡注册为Platform …

Typora+PicGo+Gitee构建云存储图片

创建Gitee仓库 首先,打开工作台 - Gitee.com,自行注册一个账户 注册完后,新建一个仓库(记得仓库要开源) 然后创建完仓库后,鼠标移动到右上角头像位置,选择设置,并点击&#xff…

终于学会听英文歌了:A Sad Me In Your Eyes

A Sad Me In Your Eyes 来源: https://lyricstranslate.com/en/ln-party-sad-me-your-eyes-lyrics.html Fire can’t burn in my eyes If without your smile Snow can cover your smile If without your love When you think of me, I’ve gone too far I can’t …

了解OpenApi和Swagger

Swagger 和 OpenAPI 是一种用于描述 RESTful API 的规范和工具集合。在本文中,我们将探讨 Swagger 和 OpenAPI 的概念、作用、使用方法以及优缺点。 Swagger 和 OpenAPI 的概念 Swagger 是一种用于描述 RESTful API 的规范。它提供了一种简单的方式来描述 API 的请…

Python 热力图的绘制(Matplotlib篇-12)

Python 热力图的绘制(Matplotlib篇-12)         🍹博主 侯小啾 感谢您的支持与信赖。☀️ 🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ�…

文件内容搜索利器 - grep

文章目录 文件内容搜索利器 - grep语法默认无参数增加文件夹反向查找不区分大小写显示行数,精准定位更多信息文件内容搜索利器 - grep Linux grep 命令用于查找文件里符合条件的字符串。 官方定义为: grep, egrep, fgrep - print lines matching a pattern grep支持正则表达…

ubuntu安装conda

在 Ubuntu 系统上安装 Anaconda 是一个直接的过程。Anaconda 是一个流行的 Python 和 R 数据科学及机器学习平台,它包括了许多科学计算和数据处理的库。以下是在 Ubuntu 上安装 Anaconda 的步骤: 1. 下载 Anaconda 安装脚本 首先,需要从 An…

2024年年初Java5年实战面试题(北京)

高阶篇: 一、在面对千万条并发请求的情况下,如果数据库频繁查询导致崩溃,可以采取以下措施来解决问题: 1.缓存数据:可以使用缓存技术来减少对数据库的查询次数。将经常查询的数据存储在缓存中,例如使用Redis等内存数据库&#xff…

如何做好档案数字化前的鉴定工作

要做好档案数字化前的鉴定工作,可以按照以下步骤进行: 1. 确定鉴定目标:明确要鉴定的档案的内容、数量和性质,确定鉴定的范围和目标。 2. 进行档案清点:对档案进行全面清点和登记,包括数量、种类、状况等信…

立体匹配算法(Stereo correspondence)

SGM(Semi-Global Matching)原理: SGM的原理在wiki百科和matlab官网上有比较详细的解释: wiki matlab 如果想完全了解原理还是建议看原论文 paper(我就不看了,懒癌犯了。) 优质论文解读和代码实现 一位大神自己用c实现…

分析Java中的StringHelper类

目录 前言1. 概念2. 功能示例3. Demo示例 前言 在项目中实战学习并记录可用的工具类 1. 概念 Java标准库(java.lang包)并没有提供名为StringHelper的类。通常,类似的字符串处理工具类并不是Java标准库的一部分,而是由程序员自行…

python使用隐马尔可夫模型识别波形数据MFCC特征

python使用隐马尔可夫模型识别振动波形数据MFCC特征 1、简介 ​ 隐马尔可夫模型非常擅长对时间序列数据进行建模。 ​ 由于振动波形数据是时间序列信号,HMM能够满足波形分类需求。 ​ 隐马尔可夫模型是表示观察序列的概率分布的模型。假设输出是由隐藏状态生成的。 2、数…

如何在Windows安装Wnmp服务并实现固定地址远程访问

文章目录 前言1.Wnmp下载安装2.Wnmp设置3.安装cpolar内网穿透3.1 注册账号3.2 下载cpolar客户端3.3 登录cpolar web ui管理界面3.4 创建公网地址 4.固定公网地址访问 前言 WNMP是Windows系统下的绿色NginxMysqlPHP环境集成套件包,安装完成后即可得到一个Nginx MyS…

58.0/PhotoShop 图层的应用(详细版)

目录 58.1 图层的概念 58.2 图层的控制面板 58.3 图层的基本操作 58.3.1 新建图层 58.3.2 选择图层 58.3.3 复制图层 58.3.4 调整图层的叠加顺序 58.3.5 合并图层 58.4 图层样式 58.4.1 投影 58.4.2 内阴影 58.4.3 外发光样式 58.4.4 内发光样式 58.4.5 斜面和浮雕…

JSONyaml和Properties

注:取自GPT,总是忘记了,那我干脆就写一篇blog YAML(YAML Ain’t Markup Language 或 YAML Ain’t a Markup Language)和 JSON(JavaScript Object Notation)是两种不同的数据序列化格式&#xf…