0

我正在使用resourceLoader.getResourceSpring Batch 应用程序从 AWS S3 读取文件,但出现以下异常:

Caused by: java.lang.IllegalStateException: Input resource must exist (reader is in 'strict' mode): class path resource [s3://myProduct/app/dev/product/input1]

我尝试了多种解决方案,例如 usingPathResource和其他方法,但没有成功。有人可以帮我解决这个问题吗?请在下面找到我的reader方法:

@Bean
@StepScope
public FlatFileItemReader<String> fileReader() {

    String bucketName = "myProduct";
    String key = "app/dev/product/input1";

    FlatFileItemReader reader = new FlatFileItemReader<>();
    reader.setResource(resourceLoader.getResource("s3://" +bucketName + "/" +key));
    reader.setLineMapper(new DefaultLineMapper());


    return reader;
}
4

1 回答 1

0

你的是什么resourceLoader?我假设它是 spring 的 ResourceLoader,我猜它不适合你。你可以测试其他Resource的,比如UrlResource

于 2022-01-17T02:28:37.793 回答