首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使SOS作业计划程序1.13与AdoptOpenJDK一起工作

使SOS作业计划程序1.13与AdoptOpenJDK一起工作
EN

Server Fault用户
提问于 2019-12-08 18:26:15
回答 1查看 447关注 0票数 0

有人知道如何让SOS作业计划版本1.13在AdoptOpenJDK上使用AdoptOpenJDK JDK 8吗?JOC本身似乎可以工作,但是JOC工具无法运行,无法找到JVM。

用于JOC的Windows服务陷入“启动”状态,以下内容出现在其日志文件中:

代码语言:javascript
复制
[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.iniconfig\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上的数据中心。

EN

回答 1

Server Fault用户

发布于 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路径。

打开具有管理权限的命令提示符,运行以下命令-

代码语言:javascript
复制
"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

您仍然会遇到这样的错误:

代码语言:javascript
复制
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复制到自己的临时文件夹。在打开的命令提示符中运行以下命令:

代码语言:javascript
复制
cd C:\YourTempFolder
jar -xvf joc.war

删除WEB\lib文件夹中的icu4j-2.6.1.jar文件。将icu4j-65_1.jar文件复制到WEB\lib文件夹中。

在打开的命令提示符中运行以下命令:

代码语言:javascript
复制
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。你该走了。

票数 0
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/994805

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档