OpenJDK Maven 编译出错: package jdk.nashorn.internal.runtime.logging does not exist

前言

  • OpenJDK 1.8.0
  • Maven 3.8.5
  • TencentOS Server 3.1

错误信息

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project tour-common: Compilation failure: Compilation failure: 
[ERROR] /opt/tour-common/src/main/java/com/tour/common/utils/ElasticSearchClientUtil.java:[6,44] package jdk.nashorn.internal.runtime.logging does not exist
[ERROR] /opt/tour-common/src/main/java/com/tour/common/utils/ElasticSearchClientUtil.java:[39,2] cannot find symbol
[ERROR]   symbol: class Logger
[ERROR] -> [Help 1]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException
[ERROR] 
[ERROR] After correcting the problems, you can resume the build with the command
[ERROR]   mvn <args> -rf :tour-common

分析

缺少 jdk.nashorn.internal.runtime.logging

情况1

OpenJDK中没有nashorn.jar。
jdk.nashorn.internal.runtime.loggingnashorn.jar 中。

解决办法:安装jdk1.8,从jdk的安装目录中找到 nashorn.jar 拷贝到OpenJDK的对应位置。
nashorn.jar%JAVA_HOME%\jre\lib\ext目录。

情况2

JDK的高版本中移除了 nashorn.jar

解决办法:降低版本到jdk1.8。

maven 操作

查看maven使用哪个JDK

shell> mvn -v
Apache Maven 3.8.5 (Red Hat 3.8.5-3)
Maven home: /usr/share/maven
Java version: 17.0.7, vendor: Red Hat, Inc., runtime: /usr/lib/jvm/java-17-openjdk-17.0.7.0.7-3.tl3.x86_64
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "5.4.119-19-0009.11", arch: "amd64", family: "unix"

查看JAVA_HOME

shell> echo $JAVA_HOME

设置JAVA_HOME

参考这里。

临时设置JAVA_HOME

shell> export JAVA_HOME=/usr/lib/jvm/TencentKona-8.0.12-352

找到java安装目录

shell> which java
/usr/bin/java
shell> ll /usr/bin/java
lrwxrwxrwx 1 root root 22 Sep 21  2022 /usr/bin/java -> /etc/alternatives/java
shell> ll /etc/alternatives/java
lrwxrwxrwx 1 root root 48 Oct 31  2022 /etc/alternatives/java -> /usr/lib/jvm/TencentKona-8.0.12-352/jre/bin/java
shell> cd /usr/lib/jvm/TencentKona-8.0.12-352
shell> ll
total 51564
-r--r--r--  1 root root     1522 Oct 21  2022 ASSEMBLY_EXCEPTION
drwxr-xr-x  2 root root     4096 Oct 31  2022 bin
drwxr-xr-x  9 root root     4096 Oct 31  2022 demo
drwxr-xr-x  3 root root     4096 Oct 31  2022 include
drwxr-xr-x  4 root root     4096 Oct 31  2022 jre
drwxr-xr-x  3 root root     4096 Oct 31  2022 lib
-r--r--r--  1 root root    19274 Oct 21  2022 LICENSE
drwxr-xr-x  4 root root     4096 Oct 31  2022 man
-rw-r--r--  1 root root       84 Oct 21  2022 release
drwxr-xr-x 10 root root     4096 Oct 31  2022 sample
-rw-r--r--  1 root root 52581093 Oct 21  2022 src.zip
-r--r--r--  1 root root   157063 Oct 21  2022 THIRD_PARTY_README

TencentOS Server 3.1 自带OpenJDK

TencentOS Server 3.1 中带2个OpenJDK

  • openjdk version “1.8.0_352”
  • openjdk 17.0.7 2023-04-18 LTS

切换jdk

设置JAVA_HOME即可

其它

https://blog.csdn.net/wlopper/article/details/119676442
https://blog.csdn.net/qq_36135928/article/details/120190807
https://stackoverflow.com/questions/59126867/jdk-nashorn-internal-ir-annotations-does-not-exist

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

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

相关文章

JavaScript预编译机制

变量预编译 任何变量&#xff0c;如果未经声明就赋值&#xff0c;此变量是属于 window 的属性&#xff0c;而且不会做变量提升&#xff0c;无论在哪个作用域内赋值。比如说直接写 console.log(a)肯定会报错&#xff0c;提示找不到 a。但如果直接写 a 100就不会报错&#xff0…

【Linux命令行与Shell脚本编程】第十九章 正则表达式

Linux命令行与Shell脚本编程 第十九章 正则表达式 文章目录 Linux命令行与Shell脚本编程 第十九章 正则表达式九.正则表达式9.1.正则表达式基础9.1.1.正则表达式的类型9.2.定义BRE模式9.2.1.普通文本9.2.2.特殊字符 9.2.3.锚点字符锚定行首^锚定行尾$组合锚点 9.2.4.点号字符\.…

funbox3靶场渗透笔记

funbox3靶场渗透笔记 靶机地址 https://download.vulnhub.com/funbox/Funbox3.ova 信息收集 fscan找主机ip192.168.177.199 .\fscan64.exe -h 192.168.177.0/24___ _/ _ \ ___ ___ _ __ __ _ ___| | __/ /_\/____/ __|/ __| __/ _ |/ …

SpringBoot复习(39)Servlet容器的自动配置原理

Servlet容器自动配置类为ServletWebServerFactoryAutoConfiguration 可以看到通过Import注解导入了三个配置类&#xff1a; 通过这个这三个配置类可以看出&#xff0c;它们都使用了ConditionalOnClass注解&#xff0c;当类路径存在tomcat相关的类时&#xff0c;会配置一个T…

【数据结构•堆】序列和的前n小元素

题目描述 问题&#xff1a;序列和的前n小元素   给出两个长度为n的有序表A和B, 在A和B中各任取一个, 可以得到 n^2 个和. 求这些和最小的n个。 输入输出格式 输入格式&#xff1a; 输入数据共三行。   第一行&#xff0c;一个整数值n &#xff08; n < 10^4 &#xff…

Linux系列:从0到1用Docker部署springboot项目

目录 1.前提条件 2.编写DockerFile镜像文件 3.打包SpringBoot项目 4.通过软件Xftp进行传输&#xff08;*&#xff09; 1.点击“文件-新建”​编辑 5.操作远程主机 1.docker构建 2.容器运行 6.容器的关闭和删除 1.前提条件 Linux、docker、xftp的安装、一台可以访问的远…

教雅川学缠论07-中枢实战众泰汽车000980

本文实战众泰汽车 下面是2023年11月14-2023年8月8众泰汽车日K图 先画日K 接下来处理包含&#xff0c;就变成下面这个样子 下面在套上缠论的理论&#xff0c;未来股价的走势应该是红色椭圆形虚线里面的样子 好了&#xff0c;文章就到这里&#xff0c;如果众泰最终不是这个走势…

linux 目录操作命令

目录操作命令 文件列表 ls命令文件列表 ls [选项] [参数]-------------------------------l 详细信息-L 紧接着符号性连接&#xff0c;列出它们指向的文件-a 所有文件&#xff0c;包含隐藏文件(以点号起始的文件)-A 与-a相同&#xff0c;但是不会列出来. 和 ..-c 根据创建时间排…

IDEA部署配置Maven项目教程,IDEA配置Tomcat(2019.3.3)

一、前言 当涉及到软件开发和项目管理时&#xff0c;使用一个可靠的构建工具是非常重要的。Maven是一个广泛使用的构建工具&#xff0c;它为Java项目提供了一种简化的构建过程和依赖管理。 在本文中&#xff0c;我们将探讨如何部署Maven并开始使用它来构建您的项目。我们将介绍…

Java基础篇--浅拷贝和深拷贝

概念 浅拷贝&#xff08;Shallow Copy&#xff09;和深拷贝&#xff08;Deep Copy&#xff09;是在对象复制过程中常用的概念。 浅拷贝是指创建一个新对象&#xff0c;并将原始对象的非静态字段的值拷贝到新对象中。如果字段是基本数据类型&#xff0c;直接复制其值&#xf…

开源数据库Mysql_DBA运维实战 (修改root密码)

MySQL——修改root密码的4种方法 本文以windows为例为大家详细介绍下MySQL修改root密码的4种方法&#xff0c;大家可以可以根据的自己的情况自由选择&#xff0c;希望对大家有所帮助 方法1&#xff1a; 用SET PASSWORD命令 首先登录MySQL。 格式&#xff1a;mysql> set pass…

Android APK体积优化(瘦身)

1、基础知识&#xff1a; 1.1 apk结构 lib &#xff1a;存放so文件&#xff0c;对应不同的cpu架构 res &#xff1a;资源文件&#xff0c;layout、drawable等&#xff0c;经过aapt编译 assets &#xff1a;资源文件&#xff0c;不经过aapt编译 classes.dex &#xff1a;dx编译…

爬虫:使用Selenium模拟人工操作及获取网页内容

专栏介绍 结合自身经验和内部资料总结的Python教程,每天3-5章,最短1个月就能全方位的完成Python的学习并进行实战开发,学完了定能成为大佬!加油吧!卷起来! 全部文章请访问专栏:《Python全栈教程(0基础)》 再推荐一下最近热更的:《大厂测试高频面试题详解》 该专栏对…

graphab 教程 ——生成廊道

Graphab软件包括图谱创建、基于图谱的连通性计算、分析与推广、制图四个模块。Graphab软件的图谱创建基于栅格数据进行,包括斑块识别和连接建立两个步骤。Graphab 软件可识别的栅格数据格式包括TIFF、ASCI和RST,栅格像元记录数值用于识别斑块类型,识别规则可以选择四邻域或八邻…

2-redis单节点搭建安装

1.系统要求 本次redis四种模式(单机(standalone)模式、主从(master-slave)模式、哨兵(sentinel)模式、集群(cluster)模式)的搭建,以CentOS服务器进行。 类型版本CentOS7.9Redis7.0.121.1.OS基础配置 CentOS为了能够正常安装redis,需要对CentOS进行常规的一些基础配置,主要…

【Zabbix安装-5.5版本】

Zabbix安装&#xff08;rpm包安装&#xff09; Index of /zabbix/zabbix/5.5/rhel/8/x86_64/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror rpm包链接&#xff1a;https://mirrors.tuna.tsinghua.edu.cn/zabbix/zabbix/5.5/rhel/8/x86_64/zabbix-release-5.5-1.e…

Unity3d C#利用本地网页快速打开萤石云监控视频流(ezopen)实现云台,声音等控制,支持WebGL平台,替代UMP播放(含源码)

前言 之前我介绍了替代Universal?Media?PlayerUMP播放石云监控视频流(ezopen)的功能&#xff0c;效果还是很明显的&#xff0c;笔者的测试是差不多3-5秒就能打开监控画面&#xff0c;不过稍微遗憾的是&#xff0c;之前的功能是iframe打开石云提供的播放网页的形式&#xff0…

详解拦截器和过滤器

目录 代码演示过滤器Demo拦截器Demo 过滤器自定义拦截器配置拦截器过滤器执行原理多个过滤器的执行顺序 拦截器自定义拦截器注册拦截器1&#xff09;注册拦截器2&#xff09;配置拦截的路径3&#xff09;配置不拦截的路径 多个拦截器的执行顺序 过滤器和拦截器的区别 代码演示 …

HarmonyOS教育类APP项目实战系列课结课考试答案(1-10讲)80分就合格

王丹辉&#xff08;第一讲&#xff09;&#xff1a;HarmonyOS教育类APP项目实战开课及低代码初体验 结课考试 及格分80/ 满分100 评价 判断题 1. DevEco Studio不能同时支持HarmonyOS和OpenHarmony应用/服务开发 正确(True)错误(False) 回答正确 2. DevEco Studio…

C#基础知识(一)

一、C#程序结构 《1》命名空间的声明&#xff08;namespace declaration&#xff09; 《2》一个class 《3》class方法 《4》class属性 《5》一个main方法 《6》语句&#xff08;statements&#xff09;&表达式&#xff08;Expressions&#xff09; 《7》注释 注&#xff1a…