有人知道如何让SOS作业计划版本1.13在AdoptOpenJDK上使用AdoptOpenJDK JDK 8吗?JOC本身似乎可以工作,但是JOC工具无法运行,无法找到JVM。
用于JOC的Windows服务陷入“启动”状态,以下内容出现在其日志文件中:
[2019-12-08 12:14:36] [info] [ 2168] Commons Daemon procrun (1.0.15.0 64-bit) started
[2019-12-08 12:14:37] [info] [ 2168] Running 'sos_joc' Service...
[2019-12-08 12:14:37] [error] [ 2916] Unable to find Java Runtime Environment.我目前正在运行Scheduler 1.11,通过在config\factory.ini和config\sos.ini中设置指向AdoptOpenJDK安装中的bin\server\jvm.dll的属性来运行Scheduler 1.11。我在1.13作业计划程序配置中设置了相同的内容。但是我看不到JOC 1.13的"Jetty“配置文件中有什么地方可以做出类似的设置。
我已经按照SOS文件的建议将AdoptOpenJDK JRE目录添加到系统%PATH%中,但这并没有明显的效果。我还将系统%JAVA_HOME%和%JRE_HOME%设置为指向AdoptOpenJDK;也没有影响。无论如何,我不想做这些事情,因为这些都是全局设置,会影响在此服务器上运行的其他应用程序。
我们没有运行Oracle JDK/‘re,因为Oracle的新Java许可条款使其不再是用于生产的免费啤酒。
这是在Windows 2016 Azure上的数据中心。
发布于 2020-02-20 19:41:59
这可能有点晚了,但我已经开始工作了。您的路径可能不一样,所以在运行命令之前我会检查这些路径。下面是如何实现的。
从OpenJDK13U-jdk_x64_windows_openj9_13.0.2_8_openj9-0.18.0.msi安装https://github.com/AdoptOpenJDK/openjdk13-binaries/releases/download/jdk-13.0.2%2B8_openj9-0.18.0/OpenJDK13U-jdk_x64_视窗_openj9_13.0.2_8_openj9-0.18.0.msi
确保系统环境变量JAVA_HOME设置为AdoptOpenJDK路径。我的是C:\Program \AdoptOpenJDK\jdk-13.0.2.8-openj9\bin,应该是默认的。
还要确保系统环境变量路径包括AdoptOpenJDK路径。
打开具有管理权限的命令提示符,运行以下命令-
"C:\Program Files\sos-berlin.com\joc\service\set_java_home_for_jetty_windows_service.cmd" "C:\Program Files\AdoptOpenJDK\jdk-13.0.2.8-openj9"
cd "C:\Program Files\sos-berlin.com\joc\jetty_base"
"C:\Program Files\AdoptOpenJDK\jdk-13.0.2.8-openj9\bin\java" -jar "C:\Program Files\sos-berlin.com\joc\jetty\start.jar" --create-startd --add-to-start=jsp您仍然会遇到这样的错误:
Error scanning entry com/ibm/icu/impl/data/LocaleElements_zh__PINYIN.class from jar file:///C:/Users/Username/.m2/repository/com/ibm/icu/icu4j/2.6.1/icu4j-2.6.1.jar"这是这个版本的icu4j-2.6.1.jar文件的已知问题。你得换掉它。从https://github.com/unicode-org/icu/releases/download/release-65-1/icu4j-65_1.jar下载icu4j-65_1.jar文件。
必须用新的C:\ProgramData\sos-berlin.com\joc\jetty_base\webapps\joc.war文件更新icu4j文件。
将joc.war复制到自己的临时文件夹。在打开的命令提示符中运行以下命令:
cd C:\YourTempFolder
jar -xvf joc.war删除WEB\lib文件夹中的icu4j-2.6.1.jar文件。将icu4j-65_1.jar文件复制到WEB\lib文件夹中。
在打开的命令提示符中运行以下命令:
rm joc.war
jar -cvf joc.war *
rename "C:\ProgramData\sos-berlin.com\joc\jetty_base\webapps\joc.war" "C:\ProgramData\sos-berlin.com\joc\jetty_base\webapps\joc.war.old"
copy joc.war C:\ProgramData\sos-berlin.com\joc\jetty_base\webapps重新启动机器。
打开任务管理器,选择“服务”选项卡,并确保sos_scheduler_YourMachinename_40444服务正在运行。如果没有,请确保停止sos_joc服务,然后启动sos_scheduler_YourMachinename_40444服务。一旦运行,启动sos_joc服务。
点击桌面上的链接打开JOC。你该走了。
https://serverfault.com/questions/994805
复制相似问题