Mac构建Openfire+xmpp IM环境,报错UnsupportedClassVersionError

来源:互联网 发布:如何导入整站数据库 编辑:程序博客网 时间:2024/06/05 16:03

环境:Mac OS X 10.11.5, Java:1.8.0,Openfire:4.0.2

最近在研究IM,今天搭建IM环境,但是在安装Openfire的时候,安装之后从面板启动openfire,硬是无法启动,没辙,只能使用命令启动了。

启动openfire 首先设置下快捷启动命令路径,不然每次都得切换到目录,使用如下命令添加openfire快捷访问

vi ~/.bash_profileexport PATH="${PATH}:/usr/local/openfire/bin"<pre name="code" class="plain">source ~/.bash_profile


启动:

openfire.sh

但是使用命令行启动的时候总是报如下错误:

Exception in thread "main" java.lang.UnsupportedClassVersionError: org/jivesoftware/openfire/starter/ServerStarter : Unsupported major.minor version 51.0at java.lang.ClassLoader.defineClass1(Native Method)at java.lang.ClassLoader.defineClassCond(ClassLoader.java:637)at java.lang.ClassLoader.defineClass(ClassLoader.java:621)at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)at java.net.URLClassLoader.access$000(URLClassLoader.java:58)at java.net.URLClassLoader$1.run(URLClassLoader.java:197)at java.security.AccessController.doPrivileged(Native Method)at java.net.URLClassLoader.findClass(URLClassLoader.java:190)at java.lang.ClassLoader.loadClass(ClassLoader.java:306)at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)at java.lang.ClassLoader.loadClass(ClassLoader.java:247)

在网上找了半天,有说java版本过高,又重新安装了一个java6,结果还是没有niao用
解决办法是设置JAVA_HOME,但是这提示也太奇葩了吧。本身安装java之后,无需设置java home,就可以直接使用java命令了。

使用命令 java_home 查找指定java home的位置:

/usr/libexec/java_home -V

结果如下:

Matching Java Virtual Machines (4):    1.8.0_91, x86_64:"Java SE 8"/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home    1.7.0_79, x86_64:"Java SE 7"/Library/Java/JavaVirtualMachines/jdk1.7.0_79.jdk/Contents/Home    1.6.0_65-b14-468, x86_64:"Java SE 6"/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home    1.6.0_65-b14-468, i386:"Java SE 6"/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home

在这里可以选择使用 java se 8 作为java home

设置java home的命令如下:

vi ~/.bash_profileexport JAVA_HOME="/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home"source ~/.bash_profile

重新启动openfire就可以了。

0 0