由“程序包org.graalvm.compiler.replacements.nodes不存在”拓展的知识

前言

还记得上周更新完软件出现显卡不兼容的问题,而后,这周也出现了新的问题,固然了,值得庆幸的是,此次的问题和系统一毛钱关系都没有,此次是程序出现了小问题,因而乎,我便获得了这样一条结论:个人Linux系统对关机“过敏”。html

错误信息


当我按照教程按照往常的操做启动springboot时,意外发生了,出现了以前没见过的错误(自从更换了Liunx系统后,一直在处理报错,毕竟Liunx系统大多数时候靠命令行操做,不像Windows用鼠标点点点,有的时候操做不当就各类出错,)
可是,用久了以后会发现Linux让人上瘾,命令行操做是真的好用。java


屏幕截图_4.png


报了这么多ERROR,主要的问题就一个:缺了个程序包node


屏幕截图_1.png

解决办法


不得不说Linux还挺人性化的,还给出了解决的办法,,省的本身再折腾了spring


屏幕截图_2.png


一共给了两种办法,方法一直接给出解决方法,那就先看看是啥。编程

要查看错误的完整堆栈跟踪,请使用-e开关从新运行Maven。

    [错误]使用-X开关从新运行Maven以启用完整调试日志记录。

    [错误]

    [错误]有关错误和可能的解决方案的详细信息,请阅读如下文章:

高兴的太早了,这只是查看调试日志的方法,具体的解决方法应该在下面的网站里。后端


屏幕截图_5.png


先看看这个网站是干啥的吧springboot


屏幕截图_3.png


与许多其余错误不一样,此异常不是由Maven核心自己生成的,而是由插件生成的。根据经验,插件使用此错误来表示生成失败,由于项目的依赖项或源有问题,例如编译或测试失败。maven

异常的具体含义取决于插件,所以请查看其文档。许多常见Maven插件的文档能够经过咱们的插件索引访问。编程语言


说白了就是没装插件,而后找了半天也没找到插件,没办法,只能Google了性能


屏幕截图_6.png

遗憾的是没有人发布过这个问题的解决办法,只能看看下面的词条里都有啥内容了。

拓展

GraalVM

GraalVM是一个高性能的可嵌入多语言虚拟机,目前支持许多编程语言:Java(和JVM语言),JavaScript(包括node.js),Ruby,R,Python和C / C ++以及其余具备LLVM后端的语言。

您能够在此处下载预先构建的GraalVM分发版:https://www.graalvm.org/downloads 。除此以外,它还包括一个java运行时,一个节点运行时,一个名为Graal.js的JavaScript引擎等。

Graal SDK是多语言API,容许GraalVM使用它能够运行的全部语言实现。这个多语言API打包为一个jar文件:$GRAALVM_HOME/jre/lib/boot/graal-sdk.jar

将该文件做为外部库添加到您的IDEA项目/模块中,将容许IDE找到相似如下的类:org.graalvm.polyglot.Context以及org.graalvm.polyglot.Value与语言互操做所必需的类 ,包括JavaScript实现。

若是您的项目使用Maven,您能够在该文件上添加系统依赖项,maven将在任何$JAVA_HOME设置为指向GraalVM分发的系统上找到它 。

<dependency>
    <groupId>org.graalvm</groupId>
    <artifactId>graal-sdk</artifactId>
    <version>1.0.0-rc</version>
    <scope>system</scope>
    <systemPath>${java.home}/lib/boot/graal-sdk.jar</systemPath>
</dependency>

如今,当您java从GraalVM发行版运行命令时,必要的文件将自动添加到类路径中。所以,在IDE中运行相似下面的内容再也不须要:

import org.graalvm.polyglot.*;
public class Main {
    public static void main(String[] args) {
        Context polyglot = Context.create();
        Value array = polyglot.eval("js", "[1,2,42,4]");
        System.out.println(array.getArrayElement(2).asInt());
    }
}

如今这是由于GraalVM默认启用了Graal.js JavaScript引擎。

若是要在库存JDK上运行它,则须要向类路径添加更多内容。

原文连接


以前在《Head First Java》上读到过java语言编译输出后,靠虚拟机读取与执行字节码,GraalVM就是其中的一种吧。


屏幕截图_7.png

以后也看到了这样的回答,OpenJDK8已经添加了GraalVM,可是为何还会报错就不知道了

结局


此次的事件能够说是乌龙事件了,在没有找到解决办法许久以后,我找宜衡学长问了问啥问题,最终的结果是,不知道啥时候在哪引用了这个包,多是不当心点错了吧,删除后就么得问题了。


总结

此次的乌龙事件致使我作了不少无用功,可是,也积累了经验,出错要回归代码,光看解决方法没多大用,还有就是要多查,多看,本身查出解决方法并解决问题才能记得住,只靠别人没有多大进步。

相关文章
相关标签/搜索