在win10环境下安装o2oa后启动不了
经过将近一天的折腾,终于成功安装完 o2oa,以下为安装成功后,target/o2server 目录的文件和结构https://www.o2oa.net:40020/x_file_assemble_control/jaxrs/file/216567de-a4f6-4dcc-be72-5fa7b8c8471f/download/stream
直接执行 start_windows.bat ,报系统找不到指定的路径
"D:\gitee\O2OA\target\o2server\jvm\windows_java11\bin\java" -javaagent:"D:\gitee\O2OA\target\o2server\console.jar" -server -Xms2g -Duser.timezone=GMT+08 -XX:+HeapDumpOnOutOfMemoryError -jar "D:\gitee\O2OA\target\o2server\console.jar"
系统找不到指定的路径。
编辑查看bat文件,他的启动路径是:"%~dp0jvm\windows_java11\bin\java"
然后再进入jvm目录,路径是有出入的,直接上图
https://www.o2oa.net:40020/x_file_assemble_control/jaxrs/file/375a9be4-45fb-4229-8bc0-d04c67f6f52c/download/stream
这是一个问题,但其实这个问题同时引出了以下一些问题:
1、上图这个在jvm目录下的jdk,相信是在 https://www.o2oa.net/course/ng5iqb.html 教程中 第五步:JVM下载 中window的那个jdk,这个版本其实是jdk8,包括上图的这个jdk,也是8来的
2、生成的bat文件,尝试将启动路径指向jdk11,但问题是这个路径又是不存在的,我修改bat文件,将 "%~dp0jvm\windows_java11\bin\java" 修改为 "%~dp0jvm\windows\bin\java" 这个存在的目录路径,启动时报:
Exception in thread "main" java.lang.UnsupportedClassVersionError: com/x/server/console/InstrumentationAgent has been compiled by a more recent version of the Java Runtime (class file version 55.0), this version of the Java Runtime only recognizes class file versions up to 52.0
这个通俗点来说就是:jdk11编译构建好的包,jdk8跑不了
然后我直接改为 java,毕竟装了jdk11后,环境变量也被我改成指向11,否则也完成不了o2oa的安装
改了以后执行的结果为:
java.io.IOException: invalid directory: commons/ext_java11
at com.x.server.console.InstrumentationAgent.loadWithCfg(InstrumentationAgent.java:98)
at com.x.server.console.InstrumentationAgent.premain(InstrumentationAgent.java:60)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at java.instrument/sun.instrument.InstrumentationImpl.loadClassAndStartAgent(InstrumentationImpl.java:513)
at java.instrument/sun.instrument.InstrumentationImpl.loadClassAndCallPremain(InstrumentationImpl.java:525)
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/io/FileUtils
at com.x.server.console.Main.cleanTempDir(Main.java:682)
at com.x.server.console.Main.init(Main.java:106)
at com.x.server.console.Main.main(Main.java:115)
Caused by: java.lang.ClassNotFoundException: org.apache.commons.io.FileUtils
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:582)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
... 3 more
找不到 ext_java11 这个目录,我进去 commons 目录一看,不出所料(如下图)
https://www.o2oa.net:40020/x_file_assemble_control/jaxrs/file/4d6e0b8a-773f-4ed7-bc2d-7e8d38a481c4/download/stream
只有 ext 目录,没有 ext_java11,至此,我发现如果只是简单的改bat的启动路径,是无法真正启动项目的,因为不知道还有多少地方是 *_java11 这种在我安装完以后压根不存在的目录
================================= 华丽的分割线 =======================================
我相信我已经把问题描述得比较细致和清晰了,总的来说就是:
我在按照文档教程(https://www.o2oa.net/course/ng5iqb.html)安装完以后,还是出现很可能因为jdk版本而导致无法运行的问题,教程给的是jdk8,而项目编译却是需要jdk11,包括后面出现的目录路径问题,都体现了这一点
目前遇到的问题是在win10环境下,Linux尚未尝试,也不知道是不是我的打开方式不对 您好:您是自己编译的是吧。
抱歉:java11的版本,我们编译方式文档还未更新。
会提交到技术部门,在近期更新java11的编译方式。 感谢您的回复,我想知道大概什么时候可以更新jdk11编译方式的文档呢?
页:
[1]