2017-08-03 16 views
1

私はSpringのスケジューリングを使ってcronジョブをスケジュールするSpring起動アプリケーションを持っています。私のアプリケーションには、service-toolA、service-toolB、service-applicationの3つのモジュールがあります。次のようにSpringを実行する別のモジュールでスケジュールされたジョブをスケジュール

マイサービス・アプリケーション・モジュールは、春のブートの設定とアプリケーションのクラスがあります。

package com.service.tool.main; 

@SpringBootApplication 
@ComponentScan("com.service.tool") 
@EnableAsync 
@EnableScheduling 
public class Application { 

    public static void main(String args[]) { 
     SpringApplication.run(Application.class); 
    } 
} 

今、私は他のモジュールのサービスtoolAとサービスtoolBで私のスケジュールされたジョブを持っています。

@Scheduled(fixedRate = 4000) 
public void printName() { 
    System.out.println("Hello World"); 
} 

しかし、私がアプリケーションを実行すると、スケジュールされたジョブは開始されません。これらのメソッドは、私のApplicationクラスが存在するサービスアプリケーションモジュールにこれらのScheduledメソッドを配置するときに実行されます。

サービスモジュールで異なるモジュールと設定を実行するにはどうすればよいですか?それでも

@ComponentScan("com.service.tool","com.service.module1") 

答えて

0

はたとえば、スキャンされたパッケージの一覧へ printName()を持っているクラスのパッケージを追加します。それはうまくいかなかった。スケジューラ用のBeanを登録する必要があるかどうかはわかりません。
+0

同じ問題: – Sri

関連する問題