🎉 问题
首先,nexus对jdk版本有要求,这点相信大家都知道,如果版本不对的话,会报以下错误:
No suitable Java Virtual Machine could be found on your system.
The version of the JVM must be at least 1.8 and at most 17.
Please define INSTALL4J_JAVA_HOME to point to a suitable JVM.
然后我就去下了jdk1.8,也就是java8或者说jdk8,下载完成之后,直接解压到了一个目录下面(不含中文),然后将jdk的home目录路径复制下来,在nexus的配置文件中的 INSTALL4J_JAVA_HOME
项添加这个home路径。
以上是我大致的配置过程,配置完后,启动没有问题,也没有报错,但是当我用./nexus status
查看状态时,却提示我nexus is stopped
,百思不得其解,想着既然没有报错为什么还是无法启动?直到我看到文件夹名字里面自带的java17字样,我陷入了沉思。
🎉 解决
对哦,试一下jdk17看行不行,于是又去下了jdk17(即java17)顺便贴一下下载链接地址:
jdk1.8下载链接
java17下载链接
注意下载压缩包版本,不是exe或dmg版本。下载完成后,将其解压到一个不含中文的目录下,像我是在document文件夹下新建了一个jdk文件夹,然后将其解压到这个文件夹里面,进入文件,找到/content/home文件夹,将home文件夹的路径拷贝,如/Users/qiuchuang/Documents/JDK/jdk-17.0.12.jdk/Contents/Home
在终端打开nexus的下载目录,进入/bin
目录下,有一个nexus可执行文件,使用vim nexus
命令编辑一下,如下:
进入编辑界面后,使用/
命令查找一下INSTALL4J_JAVA_HOME_OVERRIDE,即输入/
,然后输入INSTALL4J_JAVA_HOME_OVERRIDE
命令
将图中框起来这一行前面的注释#
去掉,然后在=
后面粘贴你的home路径。
保存后退出,输入./nexus start
启动nexus,然后再用./nexus status
查看,可看到已经可以正常启动了:
总结,就是jdk版本不对导致的,我还真就信了它的鬼话,不是说at least 1.8吗,为什么jdk1.8不行,骗子。