Spring Batch Admin (2.0.0.M1):创建 bean batchMBeanExporter 时出错

2024-01-05

我正在尝试从 Spring Boot 应用程序运行 Spring Batch 管理。

我在用this https://github.com/spring-projects/spring-batch-admin-samples迈克尔 (@mminella) 就是一个很好的例子。这个应用程序运行良好。

但是,我需要使用 Maven 的类似应用程序;我继续创建了一个具有相同文件、作业、配置和依赖项的文件。但我最终遇到了以下异常。

我看到的唯一区别是 spring-batch-core 的版本。对于 maven,它的版本是 3.0.6,而对于 gradle(Michael 的应用程序),它的版本是 3.0.4。

不知道当我使用maven时会发生什么;非常感谢你的帮助。如果需要任何其他详细信息,请告诉我。

期待您的意见。

谢谢你,

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'batchMBeanExporter' defined in URL [jar:file:/C:/Users/Admin/.m2/repository/org/springframework/batch/spring-batch-admin-manager/2.0.0.BUILD-SNAPSHOT/spring-batch-admin-manager-2.0.0.BUILD-SNAPSHOT.jar!/META-INF/spring/batch/bootstrap/manager/jmx-context.xml]: Cannot create inner bean 'org.springframework.aop.framework.ProxyFactoryBean#7807ac2c' of type [org.springframework.aop.framework.ProxyFactoryBean] while setting bean property 'jobService'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.aop.framework.ProxyFactoryBean#7807ac2c': Post-processing of FactoryBean's object failed; nested exception is java.lang.IllegalStateException: @Scheduled method 'removeInactiveExecutions' found on bean target class 'SimpleJobService' but not found in any interface(s) for a dynamic proxy. Either pull the method up to a declared interface or switch to subclass (CGLIB) proxies by setting proxy-target-class/proxyTargetClass to 'true'.

pom.xml

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.example</groupId>
    <artifactId>demo</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>jar</packaging>

    <name>demo</name>
    <description>Demo project for Spring Boot</description>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.3.1.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <java.version>1.8</java.version>
        <spring-batch-admin.version>2.0.0.BUILD-SNAPSHOT</spring-batch-admin.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-batch</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.batch</groupId>
            <artifactId>spring-batch-admin-manager</artifactId>
            <version>${spring-batch-admin.version}</version>
            <exclusions>
                <exclusion>
                    <artifactId>slf4j-log4j12</artifactId>
                    <groupId>org.slf4j</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>slf4j-api</artifactId>
                    <groupId>org.slf4j</groupId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>org.springframework.batch</groupId>
            <artifactId>spring-batch-admin-domain</artifactId>
            <version>${spring-batch-admin.version}</version>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>

        <dependency>
            <groupId>sqljdbc4</groupId>
            <artifactId>sqljdbc4</artifactId>
            <version>4.0</version>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

    <repositories>
        <repository>
            <id>spring-snapshots-local</id>
            <name>Spring Maven Snapshot Repository</name>
            <url>https://repo.spring.io/libs-snapshot-local/</url>
        </repository>
    </repositories>
</project>

Spring启动配置

@SpringBootApplication(exclude = {HypermediaAutoConfiguration.class, MultipartAutoConfiguration.class})
@EnableBatchAdmin
public class DemoApplication {

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

为了避免,作业控制器 https://github.com/spring-projects/spring-batch-admin/pull/42空指针异常,放在下面

服务器.servletPath=/*

此致, 吉格尔。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Spring Batch Admin (2.0.0.M1):创建 bean batchMBeanExporter 时出错 的相关文章

随机推荐

  • 按密度拆分的 APK 仍包含所有资源

    我决定尝试 apk sliptting 来减小 apk 的大小 我将以下内容添加到我的 gradle 构建文件中 splits Configures multiple APKs based on screen density density
  • 闪存记录 API

    谁能为 Flash AIR Flex 推荐一个好的 AS3 日志记录 API 除了编码事件之外 我还需要一些东西来捕获和记录鼠标和键盘事件 最好是有详细记录 支持的东西 提前致谢 我一直在使用霹雳 http code google com
  • 使用composer只需要1个文件?

    是否可以只需要 Composer 包中的 1 个文件 我只需要包中的 1 个或几个文件 当我只使用几个文件时 要求包含数百个文件的整个包是毫无意义的 可以通过作曲家来做到这一点吗 可以使用以下命令将特定文件包含在当前包中files自动加载策
  • Coredata非常慢;迅速

    我制作了一个 iOS 应用程序来跟踪设备的 GPS 路线 问题是 当我跟踪超过 5 分钟时 coredata 需要很长时间才能保存 我保存一个名为会话的对象 会话有很多位置对象 位置对象是 纬度 经度 会话对象看起来像 名称 string
  • Google Play Billing:如何模拟“帐户保留”状态(在调试/沙盒模式下)

    2020 年 11 月之前 Google Play 上的 Android 应用必须管理 帐户保留 状态 https developer android com distribute play policies https developer
  • AWS Fargate 中的文件

    是否可以在 Fargate 中实际写入 编辑 删除文件 由于它是无服务器的并且实际上没有文件系统 对此我无法得到明确的答案 例如 我们的一个客户需要在本地容器上写入一些临时缓存文件 这可能吗 我不想为此设置整个数据容器卷 Thanks Fa
  • 反序列化期间忽略属性

    我有一个非常好的序列化类 终于 现在我想向此类添加一个属性 但我根本不想将其序列化 是否可以添加带有某种属性的新属性 以便当我调用序列化或反序列化方法时 该属性将被忽视 XmlIgnore public int DoNotSerialize
  • 您最常重用的课程是什么?

    一段时间后 每个程序员都会得到一组实用程序类 其中一些是真正的编程珍珠 并且可以在您的多个项目中重复使用 例如 在java中 class Separator private String separator private boolean
  • php中如何将多个数组混合到一个数组中

    我正在从数据库获取数组 但它创建了多个数组 我只需要数据库中的一个数组 现在我只想从多个数组创建一个数组 我从数据库中获取了数组 Array 0 gt Array 0 gt 1 pro ref id gt 1 1 gt Array 0 gt
  • 通过 MinGW 上的 Swig/Python 以二进制模式使用 C++ 标准流

    我有一个用 C 编写的库 它使用标准流来读取和写入对象 我还有一个用 Swig 生成的 Python 接口 我用它来访问该库 在 Linux 上一切正常 但在 Windows 在 MinGW 上 上似乎不可能通过 Python 接口以二进制
  • 如何使用 netty 通过 HTTP 传输响应

    我正在使用 Netty 3 6 6 我想向调用者发送一个大的响应 我无法将响应正文复制到 ChannelBuffer 中 因为在某些情况下它会非常大 我正在将服务器从CXF迁移到Netty 以前 我只能使用CXF提供的OutputStrea
  • 为什么将 Count 与 IQueryable 一起使用被认为是不可行的

    如果我有以下代码 IQueryable
  • 如何即时更新 Eclipse 模板变量?

    我通过扩展点添加了以下新的 Eclipse 模板 它只是添加一个示例模板testTag tag
  • 一个身体可以在另一个身体里面吗?

    是否可以在外部 tbody 中包含内部 tbody 如下所示 这是一个 CSS 示例 这是示例 HTML table tbody class class1 tr td td td td tr tbody class class2 tr td
  • 未显示所有属性

    当我们尝试通过管道将数据导出到其他函数时 我们在 PowerShell 中观察到一些奇怪的行为 示例代码 Array Obj1 PSCustomObject Member1 First Member2 Second Obj2 PSCusto
  • 如何在oracle中使用SELECT查询创建空白/空列?

    我想在 oracle 中使用 选择 查询生成带有空白 空列的输出 我可以通过下面的 sql 查询来实现这一点 SELECT CustomerName AS Customer AS Contact FROM Customers 因此 当我运行
  • 具有多种角色的 Laravel 中间件

    我在 Laravel 的中间件方面遇到了一些问题 让我告诉你我想要实现的基本想法 该网站的注册用户将具有以下四种角色之一 学生 默认 可以访问 index and show views 审批者 可以访问上一个 加上 overview upd
  • 将 UIImageView 适配到 UIImage

    我有一个使用自动布局和约束设置的 UIImage 视图 我使用将图像适合图像视图 self selectPhoto contentMode UIViewContentModeScaleAspectFit NSLayoutConstraint
  • 如何从 Observable.from 收集发出值的数组?

    所以在 Rxjs 中 我有一堆代码 return Observable from input array concatMap item gt this part emits an Observable of
  • Spring Batch Admin (2.0.0.M1):创建 bean batchMBeanExporter 时出错

    我正在尝试从 Spring Boot 应用程序运行 Spring Batch 管理 我在用this https github com spring projects spring batch admin samples迈克尔 mminell