解决程序包com.sun.org.apache.regexp.internal不存在

周青的日常问题记录

学习尚硅谷B2C电商毕设微服务项目,下载了写好的后台,Maven-Lifecyle-install把模块打包成jar包放在本地仓库时报错了“程序包com.sun.org.apache.regexp.internal不存在”。
在这里插入图片描述
查找文章发现这是j8老版本的库,自己下载了貌似是jdk8的最高版本jdk1.8.0_361,以为可以覆盖j8全功能,没想到没有老版本的旧包。
下载jdk1.8.0_212后在IDEA File Project Structure-SDKs里更改JDK home path至8.212。

github上的jdk1.8.0_212下载地址

在这里插入图片描述
重新Maven-Lifecyle-install把模块打包,sucess成功

在这里插入图片描述

参考文章:【1】

  • 16
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
### 回答1: 这个错误提示是说在Java程序中引用了一个名为com.sun.org.apache.regexp.internal的包,但是该包并不存在。可能是因为该包被删除或者路径设置不正确导致的。需要检查代码中是否有引用该包的地方,并确认该包是否存在或者路径是否正确。 ### 回答2: “程序包com.sun.org.apache.regexp.internal不存在”这个错误提示一般出现在Java代码编译或运行的过程中,提示框中说明该程序包不存在,意味着编译器或虚拟机在查找该程序包时找不到合适的文件路径。 这个错误通常是由于缺少相应的JAR文件或者版本不匹配导致的。解决这个问题的办法如下: 1.检查程序包是否存在。首先确保程序包com.sun.org.apache.regexp.internal是否确实存在于项目中,可以通过查看源代码或者 IDE 中的依赖关系来确认。 2.检查是否缺少相应的JAR文件。如果确实存在于项目中,那么需要检查是否有相关的 JAR 文件缺失,或者缺失的文件版本不正确。可以通过更新或者重新安装相应的JAR文件来解决问题。 3.检查版本是否匹配。如果JAR文件存在或者已经更新过,那么可能是版本不匹配造成的问题。在使用某些外部类库时,要确保程序使用的类库版本与当前代码兼容。 4.检查路径是否正确。在程序中调用某个类或者包时,应该明确指定该类或包在哪个目录中。如果指定的路径有误,就会出现找不到程序包的错误提示。 总之,编写Java程序时要注意不同类库之间的依赖关系,以及在调用类库时应该使用正确的路径和版本。通过这些方法,可以解决程序包com.sun.org.apache.regexp.internal不存在的问题。 ### 回答3: 首先,这个错误信息意味着您的应用程序试图加载一个不存在的类或程序包。在这种情况下,您的应用程序正在尝试加载“com.sun.org.apache.regexp.internal程序包,但它并不存在。为了解决这个问题,您需要做以下几件事情: 1.检查应用程序中的代码 确定哪个部分的代码正在引用“com.sun.org.apache.regexp.internal”。首先,阅读堆栈跟踪以找出哪个方法最近引用了该包。 2.查看Java版本 检查Java版本是否与程序包版本不兼容。许多程序包只与特定版本的Java兼容,并在更老或更新的版本中不起作用。 3.检查程序包的存在 检查程序包是否存在。您可以尝试手动下载并安装程序包,以确定它是否已安装在正确的位置。如果不存在,您需要找到适当的程序包并将其安装到正确的目录中。 4.尝试更改类路径 您可以尝试更改类路径,让Java能够找到程序包。您可以通过在启动命令中使用-classpath选项来设置类路径,或者将程序包放置在标准库目录中。 最后,如果以上步骤均失败,则可能存在其他问题,例如损坏的Java安装或运行时错误。在这种情况下,您应该考虑重新安装Java或者联系Java开发社区以获取更多帮助。
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值