No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK
大离谱事件!!!!!!
Linux 服务器 maven 打包遇到这个了错误,搜了很多文章,都说是 JDK装错了,装成了JRE,JAVA_HOME 配置的有问题,但我这个确实不是上面说的,因为我手动运行maven命令是可以打包成功的,一点问题都没有。
但是我这个命令是在另一个Java程序里面调用的,一共有三个服务,他们之间的关系是这样的
A服务 通过 WEB接口调用 生成 B服务 源代码,然后调用系统命令,mvn打包成Jar包,然后通过SSH的方式连接服务器(这里刚好是同一台服务器),然后 SSH 发送 java -jar xxx.jar 的命令,B服务 正常启动。
然后B服务也通过WEB调用接口的方式触发,生成 C服务 源代码,也调用系统命令,mvn打包,然后就报错了,No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK
意外的事情来了,当我登录服务器,手动重启下 B服务,再次使用WEB调用接口的方式触发,生成 C服务 源代码,同样的调用系统命令,mvn打包,这次就没有报错了,jar包正常生成了,C服务 也能正常启动。
我手动进入B服务生成C服务的源代码目录,手动使用mvn命令打包的时候,也可以正常打包成功。
目前还是百思不得其解,只是怀疑这个java调用ssh在同一台服务器的时候是不是出现了什么问题,导致环境变量取的不对,从而最终导致打包失败。做个记录,有遇到的朋友可以留言帮忙解惑下~感谢