Quartz.net Could not initialize scheduler Scheduler already exists.
来源:互联网 发布:sql中的distinct 编辑:程序博客网 时间:2024/06/03 22:49
最近用Quartz.net 做了一个定时任务处理程序.
按照网上的方法.配置如下.
在
Global.asax 文件中添加了下面的代码.
protected void Application_Start() { AreaRegistration.RegisterAllAreas(); WebApiConfig.Register(GlobalConfiguration.Configuration); FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters); RouteConfig.RegisterRoutes(RouteTable.Routes); BundleConfig.RegisterBundles(BundleTable.Bundles); AuthConfig.RegisterAuth(); StartQuartz(); //启动定时 } static IScheduler sched; static StdSchedulerFactory schedulerFactory; public static void StartQuartz() { if (sched == null) { var properties = new NameValueCollection(); properties["quartz.scheduler.instanceName"] = "DefaultQuartzScheduler"; properties["quartz.scheduler.instanceId"] = DateTime.Now.Ticks.ToString(); //// 设置线程池 properties["quartz.threadPool.type"] = "Quartz.Simpl.SimpleThreadPool, Quartz"; properties["quartz.threadPool.threadCount"] = "5"; properties["quartz.threadPool.threadPriority"] = "Normal"; //// 远程输出配置 properties["quartz.scheduler.exporter.type"] = "Quartz.Simpl.RemotingSchedulerExporter, Quartz"; properties["quartz.scheduler.exporter.port"] = "9999"; properties["quartz.scheduler.exporter.bindName"] = "QuartzScheduler"; properties["quartz.scheduler.exporter.channelType"] = "tcp"; properties["quartz.scheduler.exporter.rejectRemoteRequests"] = "true"; //<!--properties["quartz.scheduler.proxy"] = "true"; //properties["quartz.scheduler.proxy.address"] = "tcp://127.0.0.1:5555/QuartzScheduler";--> //properties["quartz.scheduler.proxy"] = "true"; //properties["quartz.scheduler.proxy.address"] = "tcp://localhost:555/QuartzScheduler"; //properties["quartz.jobStore.useProperties"] = "true"; //properties["quartz.jobStore.clustered"] = "true"; //properties["quartz.jobStore.misfireThreshold"] = "60000"; //<!--需要使用Quartz.MongoDB类库--> //<!--properties["quartz.jobStore.type"] = "Quartz.Impl.MongoDB.JobStore, Quartz.Impl.MongoDB";--> //<!--需要Quartz.Impl.AdoJobStore.JobStoreTX, Quartz类库--> //properties["quartz.jobStore.type"] = "Quartz.Impl.AdoJobStore.JobStoreTX, Quartz"; //properties["quartz.jobStore.tablePrefix"] = "QRTZ_"; //properties["quartz.jobStore.driverDelegateType"] = "Quartz.Impl.AdoJobStore.SqlServerDelegate, Quartz"; //properties["quartz.jobStore.dataSource"] = "myDS"; //<!--SqlServer //properties["quartz.dataSource.myDS.connectionString"] = "Data Source=(LocalDB)\v11.0;AttachDbFilename=|DataDirectory|\Quartz.NET.mdf;Initial Catalog=SportsStore;Integrated Security=True"; //properties["quartz.dataSource.myDS.connectionString"] = "data source=MONOMATRIX\\SQLEXPRESS;initial catalog=quartznet;user id=sa;password=*****;multipleactiveresultsets=True;"; //properties["quartz.dataSource.myDS.provider"] = "SqlServer-20"; //<!--properties["quartz.dataSource.myDS.connectionString"] = "data source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Quartz.NET.mdf;Initial Catalog=SportsStore;Integrated Security=True";--> //properties["quartz.dataSource.myDS.connectionString"] = "Data Source=(LocalDB)\v11.0;AttachDbFilename=E:\project\Log\LogManager\LogManagerWebSite\App_Data\QuartzNet.mdf;Integrated Security=True";. //<!--org.quartz.dataSource.myDS.driver = com.microsoft.jdbc.sqlserver.SQLServerDriver //org.quartz.dataSource.myDS.URL = jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=quartzTest //org.quartz.dataSource.myDS.user = sa //org.quartz.dataSource.myDS.password = sa //org.quartz.dataSource.myDS.maxConnections = 5 //properties["quartz.dataSource.myDS.provider"] = "SqlServer-20"; //<!--properties["quartz.dataSource.myDS.provider"] = "SqlServer-351"; SQLServerCe 这好几种,不知道为啥,应该是对应不同的数据库. //properties["quartz.dataSource.myDS.provider"] = "SqlServer-352"; SQLServerCe //properties["quartz.dataSource.myDS.provider"] = "SqlServer-400"; SQLServerCe --> //<!--SQLServerCe //properties["quartz.jobStore.driverDelegateType"] = "Quartz.Impl.AdoJobStore.SqlServerDelegate, Quartz"; //properties["quartz.dataSource.myDS.provider"] = "SqlServerCe-351";--> //<!--Postgre Npgsql-10 //properties["quartz.jobStore.driverDelegateType"] = "Quartz.Impl.AdoJobStore.PostgreSQLDelegate, Quartz"; //properties["quartz.dataSource.myDS.provider"] = "Npgsql-10";--> //<!--其它数据库配置见此类 //Oracle //properties["quartz.jobStore.driverDelegateType"] = "Quartz.Impl.AdoJobStore.OracleDelegate, Quartz"/> //properties["quartz.dataSource.myDS.provider"] = "OracleODPManaged-1123-40" /> //Oracle //properties["quartz.jobStore.driverDelegateType"] = "Quartz.Impl.AdoJobStore.OracleDelegate, Quartz"/> //properties["quartz.dataSource.myDS.provider"] = "OracleODPManaged-1211-40"; //Oracle //properties["quartz.jobStore.driverDelegateType"] = "Quartz.Impl.AdoJobStore.OracleDelegate, Quartz"/> //properties["quartz.dataSource.myDS.provider"] = "OracleODP-20"; //MySQL //properties["quartz.jobStore.driverDelegateType"] = "Quartz.Impl.AdoJobStore.MySQLDelegate, Quartz"/> //properties["quartz.dataSource.myDS.provider"] = "MySql-50"; //MySQL //properties["quartz.jobStore.driverDelegateType"] = "Quartz.Impl.AdoJobStore.MySQLDelegate, Quartz"/> //properties["quartz.dataSource.myDS.provider"] = "MySql-51"; //MySQL //properties["quartz.jobStore.driverDelegateType"] = "Quartz.Impl.AdoJobStore.MySQLDelegate, Quartz"/> //properties["quartz.dataSource.myDS.provider"] = "MySql-65"; //MySQL //properties["quartz.jobStore.driverDelegateType"] = "Quartz.Impl.AdoJobStore.MySQLDelegate, Quartz"/> //properties["quartz.dataSource.myDS.provider"] = "MySql-10"; //MySQL //properties["quartz.jobStore.driverDelegateType"] = "Quartz.Impl.AdoJobStore.MySQLDelegate, Quartz"/> //properties["quartz.dataSource.myDS.provider"] = "MySql-109"; //SQLite //properties["quartz.jobStore.driverDelegateType"] = "Quartz.Impl.AdoJobStore.SQLiteDelegate, Quartz"/> //properties["quartz.dataSource.myDS.provider"] = "SQLite-10"; //--> schedulerFactory = new StdSchedulerFactory(properties); sched = schedulerFactory.GetScheduler(); sched.Start(); Debug.WriteLine("StartQuart at " + DateTime.Now.ToString()); } }
然后配置了一个 crystalQuartz 悲剧的是:
怎么弄都提示下面的错误.
无奈.
Could not initialize scheduler
Scheduler with name ‘DefaultQuartzScheduler’ already exists.
这段代码在Winform 代码中是可以正常使用的.亲测无问题.
不知道为什么到了.asp.net mvc以后 就出错了
找遍了网上的文章.也没办法.解决..
后来抱着试试看的态度..
把
properties[“quartz.scheduler.instanceName”] = “DefaultQuartzScheduler”;
properties[“quartz.scheduler.instanceId”] = DateTime.Now.Ticks.ToString();
这两行注释掉.竟然可以了…..
0 0
- Quartz.net Could not initialize scheduler Scheduler already exists.
- quartz-scheduler
- scheduler
- Scheduler
- 初探quartz scheduler
- QUARTZ SCHEDULER AND LOGGING
- Quartz scheduler 简介
- Quartz Scheduler 起步
- quartz-scheduler 调度系统
- Quartz Job Scheduler Tutorials
- 【Spring】Quartz Scheduler
- Spring任务调度,Quartz Scheduler
- Quartz Scheduler CronTrigger 2012_08_26
- Quartz (一) scheduler 最初配置
- Quartz Scheduler Product 定时器API
- Quartz源码分析之Scheduler
- spring定时任务(quartz-scheduler)
- Spring Scheduler定时任务 + Quartz
- c++primer plus第十二章-再谈new定位运算符和返回对象const的引用
- POJ 1159Palindrome(区间dp)
- 第三周项目1 顺序表的基本运算
- redis 的两种持久化方式及原理
- Android 代码混淆
- Quartz.net Could not initialize scheduler Scheduler already exists.
- 数据加密介绍<1>
- kNN算法python代码学习2-手写识别系统
- android.断开SVN连接 清理.svn文件夹
- PAT研究生入学考试2015.03第三题Insertion or Heap Sort (25) 题解
- iOS开发技术分享】协议与代理
- Errors & Logging
- js 数组sort()
- 计划看一本英文版的Python基础教程