如何使用Java11解决“无法访问类型com.sun.crypto.provider.SunJCE”?

2024-01-30

我正在尝试将我的应用程序从 Java 8 迁移到 Java 11。在我的一个项目类中,我有以下行Security.addProvider(new com.sun.crypto.provider.SunJCE());。我收到此行的编译错误。如何解决这个问题?


如果没有在编译选项中明确设置 com.sun 包,则无法访问它们。添加后--add-exports=java.base/com.sun.crypto.provider=ALL-UNNAMED到compilerArgs它编译没有任何错误。

Code:

   Security.addProvider(new com.sun.crypto.provider.SunJCE());

Maven:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.example</groupId>
    <artifactId>demo</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>demo</name>

    <properties>
        <java.version>11</java.version>
        <maven.compiler.source>${java.version}</maven.compiler.source>
        <maven.compiler.target>${java.version}</maven.compiler.target>
    </properties>

    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.8.1</version>
                <configuration>
                    <source>11</source>
                    <target>11</target>
                    <compilerArgs>
                        <arg>--add-exports=java.base/com.sun.crypto.provider=ALL-UNNAMED</arg>
                    </compilerArgs>

                </configuration>
            </plugin>
        </plugins>
    </build>
</project>

java.security.Security.getProviders()返回所有提供程序,包括 SunJCE。

   Stream.of(java.security.Security.getProviders()).forEach(System.out::println);

因此,获得 SunJCE 实例的更好选择是java.security.Security.getProvider("SunJCE")

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用Java11解决“无法访问类型com.sun.crypto.provider.SunJCE”? 的相关文章

  • 序列的排列?

    我有具体数量的数字 现在我想以某种方式显示这个序列的所有可能的排列 例如 如果数字数量为3 我想显示 0 0 0 0 0 1 0 0 2 0 1 0 0 1 1 0 1 2 0 2 0 0 2 1 0 2 2 1 0 0 1 0 1 1 0
  • Junit:如何测试从属性文件读取属性的方法

    嗨 我有课ReadProperty其中有一个方法ReadPropertyFile返回类型的Myclass从属性文件读取参数值并返回Myclass目的 我需要帮助来测试ReadPropertyFile方法与JUnit 如果可能的话使用模拟文件
  • 如何在原则 2 迁移中删除外键

    我想在原则 2 迁移中删除外键 但没有 dropForeignKeyConstraint 有谁知道怎么丢掉吗 public function down Schema schema table schema gt getTable table
  • Spring AspectJ 在双代理接口时失败:无法生成类的 CGLIB 子类

    我正在使用Spring的
  • 在 Jar 文件中运行 ANT build.xml 文件

    我需要使用存储在 jar 文件中的 build xml 文件运行 ANT 构建 该 jar 文件在类路径中可用 是否可以在不分解 jar 文件并将 build xml 保存到本地目录的情况下做到这一点 如果是的话我该怎么办呢 Update
  • Java 公历日历更改时区

    我正在尝试设置 HOUR OF DAY 字段并更改 GregorianCalendar 日期对象的时区 GregorianCalendar date new GregorianCalendar TimeZone getTimeZone GM
  • 没有 Spring 的自定义 Prometheus 指标

    我需要为 Web 应用程序提供自定义指标 问题是我不能使用 Spring 但我必须使用 jax rs 端点 要求非常简单 想象一下 您有一个包含键值对的映射 其中键是指标名称 值是一个简单的整数 它是一个计数器 代码会是这样的 public
  • 检测并缩短字符串中的所有网址

    假设我有一条字符串消息 您应该将 file zip 上传到http google com extremelylonglink zip http google com extremelylonglink zip not https stack
  • 无法创建请求的服务[org.hibernate.engine.jdbc.env.spi.JdbcEnvironment]-MySQL

    我是 Hibernate 的新手 我目前正在使用 Spring boot 框架并尝试通过 hibernate 创建数据库表 我知道以前也问过同样的问题 但我似乎无法根据我的环境找出如何修复错误 休眠配置文件
  • Hibernate 的 PersistentSet 不使用 hashCode/equals 的自定义实现

    所以我有一本实体书 public class Book private String id private String name private String description private Image coverImage pr
  • 像 Java 这样的静态类型语言中动态方法解析背后的原因是什么

    我对 Java 中引用变量的动态 静态类型和动态方法解析的概念有点困惑 考虑 public class Types Override public boolean equals Object obj System out println i
  • 获取文件的总大小(以字节为单位)[重复]

    这个问题在这里已经有答案了 可能的重复 java 高效获取文件大小 https stackoverflow com questions 116574 java get file size efficiently 我有一个名为 filenam
  • java for windows 中的文件图标叠加

    我正在尝试像 Tortoise SVN 或 Dropbox 一样在文件和文件夹上实现图标叠加 我在网上查了很多资料 但没有找到Java的解决方案 Can anyone help me with this 很抱歉确认您的担忧 但这无法在 Ja
  • Eclipse 选项卡宽度不变

    我浏览了一些与此相关的帖子 但它们似乎并不能帮助我解决我的问题 我有一个项目 其中 java 文件以 2 个空格的宽度缩进 我想将所有内容更改为 4 空格宽度 我尝试了 正确的缩进 选项 但当我将几行修改为 4 空格缩进时 它只是将所有内容
  • 专门针对 JSP 的测试驱动开发

    在理解 TDD 到底是什么之前 我就已经开始编写测试驱动的代码了 在没有实现的情况下调用函数和类可以帮助我以更快 更有效的方式理解和构建我的应用程序 所以我非常习惯编写代码 gt 编译它 gt 看到它失败 gt 通过构建其实现来修复它的过程
  • 如何使用mockito模拟构建器

    我有一个建造者 class Builder private String name private String address public Builder setName String name this name name retur
  • 长轮询会冻结浏览器并阻止其他 ajax 请求

    我正在尝试在我的中实现长轮询Spring MVC Web 应用程序 http static springsource org spring docs 2 0 x reference mvc html但在 4 5 个连续 AJAX 请求后它会
  • CamcorderProfile.videoCodec 返回错误值

    根据docs https developer android com reference android media CamcorderProfile html 您可以使用CamcorderProfile获取设备默认视频编解码格式 然后将其
  • Spring Rest 和 Jsonp

    我正在尝试让我的 Spring Rest 控制器返回jsonp但我没有快乐 如果我想返回 json 但我有返回的要求 完全相同的代码可以正常工作jsonp我添加了一个转换器 我在网上找到了用于执行 jsonp 转换的源代码 我正在使用 Sp
  • Java中super关键字的范围和使用

    为什么无法使用 super 关键字访问父类变量 使用以下代码 输出为 feline cougar c c class Feline public String type f public Feline System out print fe

随机推荐

  • Android 许可证检查直接进入 applicationError(...)

    我刚刚在我的应用程序中实现了 android 服务器检查 我使用 StrictPolicy 方法是因为我可能对盗版版本的下载量是市场版本的 5 倍感到有点苦恼 无论如何 我基本上将该方法逐字编码到我的源代码中 但是 当我将开发人员控制台上的
  • jtable 到图像的转换未正确发生

    我正在尝试从表格创建缓冲图像 当我将表格添加到应用程序框架并设置大小时 我可以正确查看它 但是当我将其转换为图像时 我只能看到表格的第一行其余的在表格之外并且没有标题 生成表的代码是 table new JTable String tabl
  • FTP 在上传时检查文件是否存在以及是否在 C# 中重命名

    我有一个关于使用 C 上传到 FTP 的问题 我想要做的是 如果文件存在 那么我想在文件名后添加 Copy 或 1 这样它就不会替换该文件 有任何想法吗 var request FtpWebRequest WebRequest Create
  • 单击一次应用程序如何确定其应用程序身份?

    我有一个单击一次的应用程序 它已正确签名 正确配置并自行安装 没有任何问题 它设置为脱机运行 但从特定 URL 安装 如果我下载并运行 setup exe 它会安装更新 所以 它基本上一切正常 除了我无法打印版本号 或从代码中触发更新 如果
  • Runnable 上的 NetworkOnMainThreadException

    我正在制作 Android 4 4 项目 我有NetworkOnMainThreadException 下面是我的过程 Service sticky gt Handler per 5 minutes gt Runnable gt HttpP
  • SWIFT - 是否可以从 AVAudioEngine 或 AudioPlayerNode 保存音频?如果是,怎么办?

    我一直在查看 Swift 文档保存 AVAudioEngine 的音频输出但我找不到任何有用的提示 有什么建议吗 Solution感谢马特的回答 我找到了解决方法 下面是如何在通过 AVAudioEngine 传递音频后保存音频的示例代码
  • SXXP0003:XML 解析器报告错误:序言中不允许内容

    我的 XML 文件是
  • screenX/Y、clientX/Y 和 pageX/Y 之间有什么区别?

    有什么区别screenX Y clientX Y and pageX Y 同样 对于 iPad Safari 计算是否与桌面上类似 或者由于视口而存在一些差异 如果您能给我举一个例子 那就太好了 这是一张解释两者区别的图片pageY and
  • 有没有使用数字作为生成随机字符串的算法?

    我想生成一个任意固定长度的随机字符串 N 我的选择 使用相同的数字作为该算法的提要 它应该生成相同的字符串 通过对数字 如数字 1 进行较小的更改 它应该生成一个完全不同的字符串 很难与前一个种子联系起来 如果多个数字可能产生相同的字符串
  • Keras GRU NN 拟合时出现 KeyError:“不在索引中”

    我目前在尝试将 GRU 模型与训练数据相匹配时遇到问题 快速浏览 StackOverflow 后 我发现这篇文章与我的问题非常相似 使用 Keras io 进行最简单的 Lstm 训练 https stackoverflow com que
  • Facebook 图形 API + Facebook 页面

    使用 Facebook 的 Graph API 给定用户名 xyz 假设他们已经验证了我的网站 我如何获取用户管理的所有 Facebook 页面的列表 The accounts财产在user对象说 当前用户拥有的 Facebook 页面 如
  • WebView 无法在 Android 模拟器中工作

    我创建了一个带有简单 Web 视图的 Android 项目 我正在尝试打开谷歌 但模拟器屏幕显示 Google 不可用 我已在清单文件中添加了互联网权限 即使我也可以从模拟器浏览器访问谷歌 仅在应用程序中 我无法访问 日志中也没有打印任何内
  • 有没有办法从 UIView 捕获 WillRotateToInterfaceOrientation 事件?

    每个 UIViewController 都有一个名为 willRotateToInterface 的方法 是否也可以在 UIView 中执行此操作 这符合模型视图控制器的想法吗 我能想到的唯一方法是将事件从 UIViewController
  • 触发事件时“法师注册表项已存在”

    我目前正在尝试连接 sales order save after 事件 但在触发该事件时不断收到以下错误 Mage registry key singleton Modulename Orderobserver already exists
  • smarty tpl 中的 jquery

    smarty tpl 中的 jquery 尝试使用 jquery 插入类属性 以便我可以使用阴影对每个其他列表项行进行 CSS 样式 下面的代码似乎应该可以工作 但是 alt 类没有插入到 li 标记中 页面加载良好 没有任何问题 有人看到
  • 快速 C 随机布尔生成器

    我对在 C 中生成快速随机布尔值 或等效的 Bernoulli 0 5 随机变量 感兴趣 当然 如果有一个具有良好统计行为的快速随机生成器 那么 对随机 Bernoulli 0 5 进行采样 的问题很容易已解决 样本x统一在 0 1 并返回
  • 使用 Javascript 打印到默认打印机,无需打开 html 中的打印机确认对话框

    在 html 文件中 单击按钮打印特定 div 无需打开打印机确认弹出对话框 会自动打印该内容 这实际上不可能以所有人都支持的方式进行modern浏览器 这是有充分理由的 您不希望随机网站在没有您干预的情况下开始打印内容
  • 我可以使用 JSON 数据在 Django 中添加新对象吗?

    我有一组已知的 JSON 数据 这些数据是从 Excel 文件中提取的 我想将其添加到我的 Django 应用程序中 格式如下 Record 12345 Event Initial task completed TeamID 12345 I
  • WPF 错误的 KeyDown ASCII 代码

    我需要根据以下内容获取键盘按键的数值ASCII 表 http www asciitable com 由于 WPF 没有内置解决方案 我尝试了几种技巧 1 这仅给出大写值 char res Char TryParse e Key ToStri
  • 如何使用Java11解决“无法访问类型com.sun.crypto.provider.SunJCE”?

    我正在尝试将我的应用程序从 Java 8 迁移到 Java 11 在我的一个项目类中 我有以下行Security addProvider new com sun crypto provider SunJCE 我收到此行的编译错误 如何解决这