因编码问题引起的Gradle JAVA_HOME错误,JAVA_HOME is set to an invalid directory

首先请保证你设置了JAVA_HOME环境变量,或者在执行脚本中正确执行了export JAVA_HOME指令。接下来是问题可能出现的情况。

情况一:发现在linux服务器上尽管JAVA_HOME完全正确,用find命令也能找到,却报错报了一个你并没有设置的位置

ERROR: JAVA_HOME is set to an invalid directory: /usr/lib/jvm/default-java

Please set the JAVA_HOME variable in your environment to match the
location of your Java installation.

这是因为当时gradle内部自己重新设置了一遍JAVA_HOME的默认位置,比较坑爹,按这篇文章(stackOverFlow解决方案,可能需要)注释掉大约位于70行左右的下述内容即可

export JAVA_HOME=/usr/lib/jvm/default-java

情况二:路径正确,也没被程序篡改,依旧不能运行

ERROR: JAVA_HOME is set to an invalid directory: "#这里显示的是你自己配置的正确路径"
Please set the JAVA_HOME variable in your environment to match the
location of your Java installation.

 我查看了源代码,gradle4.7已经找不到情况一的错误了,那么此时是因为编码问题所以看起来正确的路径其实并不正确。我是因为在windows用notepad++编写了执行脚本,而windows和linux的字符(空格换行等)可能有不同,再通过xftp传送到linux服务端发生的错误。但是如果你使用sublime Text或者直接在服务端用vim写脚本是不会出错的!

问题解释到这,能帮上忙还请各位点赞或评论!

不能解决欢迎留言讨论!

你可能感兴趣的:(环境配置,环境配置二三事)