是否可以引用grails中不同配置文件中定义的变量?

时间:2014-08-27 08:36:53

标签: grails quartz-scheduler grails-config

我已经看过几个类似的问题,但我还没有找到解决方案。如果这是重复的话,请道歉。

我的数据源是MongoDB,用户正在外部配置文件中定义其属性,如下所示:

外部数据源文件

mongo {
    host = "mongohost"
    port = 27017
    databaseName = "myDatabase"
}

这很好,并且它已经运作了很长一段时间。 现在问题已经出现,我已经在应用中添加了石英。我需要在Quartz配置文件中定义quartz的数据源。

QuartzConfig.groovy

quartz {
    autoStartup = true
    jdbcStore = false
    waitForJobsToCompleteOnShutdown = true
    exposeSchedulerInRepository = false

    props {
        scheduler.skipUpdateCheck = true
        jobStore.class="com.novemberain.quartz.mongodb.MongoDBJobStore"
        jobStore.mongoUri="${mongo.host}"
        jobStore.addresses="${mongo.host}"
        jobStore.dbName="quartz"
        jobStore.collectionPrefix="quartz"
        threadPool.threadCount=1
    }
}

主机应与外部数据源中的用户定义主机相同。无论我尝试什么,我似乎都无法访问mongo.host变量。一种选择是要求用户在外部文件中指定石英配置,但我不想这样做,因为我希望尽可能保持该文件的基本。我想重用mongo.host变量。

有谁知道怎么做?

注意 我使用了这里开发的quartz-mnongo类https://github.com/michaelklishin/quartz-mongodb,如果使用石英的人在这个问题上遇到困难,发现我有mongo配置选项很奇怪。

0 个答案:

没有答案