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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何从外部jar自动运行java任务?相关的知识,希望对你有一定的参考价值。

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

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

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

您可以使用自动配置的概念。 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类中查找自动配置并加载定义在其中的类。

以上是关于如何从外部jar自动运行java任务?的主要内容,如果未能解决你的问题,请参考以下文章

Intellij IDEA在maven项目中添加外部Jar包运行

我想让一个java程序(已打成jar包)开机自动启动,不启用命令行,该如何实现?

如何从片段外部清除/重置地图?

如何使用外部库运行 jar

使用在C ++中导入外部jar文件的java类

Eclipse引入外部Jar在发布时没有自动带入,导致出现ClassNoFound错误