gpt4 book ai didi

java - 作业的运行资格与 JobLauncherTestUtils 不起作用

转载 作者:行者123 更新时间:2023-12-01 09:14:45 25 4
gpt4 key购买 nike

我有一个 launch-context.xml,它定义了 7 个不同的作业,所有这些作业都有相同的父作业。它们的名称如“jobA”、“jobB”等。

我尝试过:

 @RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = { "/launch-context.xml", "/OurBatchKernelTestConfig.xml" })
public class AllTest extends BaseRaptorBatchTest {

@Autowired
private JobLauncherTestUtils utils;

@Autowired
@Qualifier(value="jobA")
private Job job;

@Test
public void testLaunch() {
Properties p = new Properties(); // then I set these up.
JobExecution je = utils.launchJob(paraCvter.getJobParameters(p));
}
}

这不起作用。

我收到一个异常,例如:

 STDOUT [WARN ] [2015.04.15 11:14:42] support.GenericApplicationContext - Exception encountered during context initialization - cancelling refresh attempt
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'jobLauncherTestUtilsForSnapshot': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire method: public void org.springframework.batch.test.JobLauncherTestUtils.setJob(org.springframework.batch.core.Job); nested exception is org.springframework.beans.factory.NoUniqueBeanDefinitionException: No qualifying bean of type [org.springframework.batch.core.Job] is defined: expected single matching bean but found 2: coverageRuleBatch,generateMetricsSnapshotJob

我也尝试过:

https://stackoverflow.com/a/29658577/869809

我尝试过:

https://stackoverflow.com/a/36352437/869809

这些都不起作用。

我可以创建 launch-content.xml 的副本并删除其他作业。然后我在注释中引用了这一点,一切都很好。但我随后需要 7 个不同的 xml 文件。恶心。

最佳答案

根据异常消息中的信息,您似乎需要消除 Spring 上下文中的哪些 bean 应 Autowiring 到成员变量 utils 的歧义。像这样的事情:

 @Autowired
@Qualifier(value="coverageRuleBatch")
private JobLauncherTestUtils utils;

或者这个:

 @Autowired
@Qualifier(value="generateMetricsSnapshotJob")
private JobLauncherTestUtils utils;

应该解决歧义。

关于java - 作业的运行资格与 JobLauncherTestUtils 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40643889/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com