1

我正在使用 Quartz.NET 2.2.400.0 并且在单台机器上安装多个实例时遇到问题。

我正在尝试通过配置文件(Quartz.Server.exe)修改实例的名称,如下所示:

<quartz >
  <add key="quartz.checkConfiguration" value="false"/> 
  <add key="quartz.server.serviceName" value="CalSched"/> 
  <add key="quartz.server.serviceDisplayName" value="CalSched"/> 
  <add key="quartz.server.serviceDescription" value="CalSchedservice"/> 
</quartz> 

运行 Quartz.Server.exe install 时没有上述内容,一切正常。指定服务名称时,调度程序不会运行。

我想知道是否有人能够对此有所了解?

4

1 回答 1

2

这是一种旧思路。但如果有人遇到同样的问题,我会把答案放在这里。当使用<quartz>标签 (Quartz.Server.exe.config) 时,quartz 将忽略quartz.config 中的配置,因此,此配置行将被忽略quartz.plugin.xml.fileNames = ~/quartz_jobs.xml.。因此,quartz 不会读取您的作业设置,也不会运行作业预期的。

因此,您需要将所有配置移动到标记。您需要添加

<quartz >
  <add key="quartz.checkConfiguration" value="false"/> 
  <add key="quartz.server.serviceName" value="CalSched"/> 
  <add key="quartz.server.serviceDisplayName" value="CalSched"/> 
  <add key="quartz.server.serviceDescription" value="CalSchedservice"/>
  <!-- MUST ADD -->
  <add key="quartz.plugin.xml.type" value="Quartz.Plugin.Xml.XMLSchedulingDataProcessorPlugin, Quartz" />
  <add key="quartz.plugin.xml.fileNames" value="~/quartz_jobs.xml" /> 
</quartz>

它会起作用。

于 2015-04-01T04:39:16.550 回答