如何从外部jar自动运行java任务?

问题描述 投票:1回答:1

我想生成一个java jar,当它包含在另一个项目的类路径中时,将启动一个在后台执行某些操作的定期任务。这与eureka客户端非常相似。您包括依赖项并添加注释,之后将自动启动服务以轮询eureka服务器。我怎样才能做到这一点?

编辑:我按照评论中提供的示例使用maven工作

  • github.com/shauank/spring-boot/tree/master/client(有taskexecutor的客户)
  • github.com/shauank/spring-boot/tree/master/application(使用在步骤1中创建的jar的应用程序)
java spring annotations
1个回答
1
投票

您可以使用自动配置的概念。 Eureka和Config服务器使用相同的功能。

src/main/resource下创建spring.factories并添加以下条目

org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
location.to.your.executor

你的班,

pacakage location.to.your.executor

class MyExecutor{

  public MyExecutor(){
    //Your code for task executor
  }

}

现在,上面的代码可以构建为jar并包含在另一个spring boot项目中。

因此,当你运行另一个jar时,qazxsw poi会在qazxsw poi类中查找自动配置并加载定义在其中的类。

© www.soinside.com 2019 - 2024. All rights reserved.