0

以前一切正常。今天我将 Spring Batch 与我的 Spring Boot 应用程序一起配置,并遇到了application.properties.

我有以下使用 Jasypt 加密的属性:

spring.profiles.active=https
ENVIRONMENT=h2

#aws sqs
aws.sqs.account.access.key=ENC(kjsdh456fgkjhdfsgkjhdfg)
#queue message listener
queue.message.listener.task.executor.threads.number=1
queue.message.listener.task.executor.max.concurrent.consumers=1

现在,为了配置我添加的 Spring Batch

ENVIRONMENT=h2

application.properties归档。

另外,我添加了batch-h2.properties文件:

# Placeholders batch.* for H2 database:
batch.jdbc.driver=org.h2.Driver
batch.jdbc.url=jdbc:h2:~/testdb;CIPHER=AES;AUTO_SERVER=TRUE;DB_CLOSE_ON_EXIT=FALSE
batch.jdbc.user=sa
batch.jdbc.password="sa sa"
batch.jdbc.testWhileIdle=false
batch.jdbc.validationQuery=
batch.drop.script=classpath:/org/springframework/batch/core/schema-drop-h2.sql
batch.schema.script=classpath:/org/springframework/batch/core/schema-h2.sql
batch.business.schema.script=classpath:/business-schema-h2.sql
batch.database.incrementer.class=org.springframework.jdbc.support.incrementer.H2SequenceMaxValueIncrementer
batch.database.incrementer.parent=sequenceIncrementerParent
batch.lob.handler.class=org.springframework.jdbc.support.lob.DefaultLobHandler
batch.grid.size=2
batch.jdbc.pool.size=6
batch.verify.cursor.position=true
batch.isolationlevel=ISOLATION_SERIALIZABLE
batch.table.prefix=BATCH_

之后我不断收到以下异常:

Caused by: java.lang.IllegalArgumentException: Could not resolve placeholder 'aws.sqs.account.access.key' in string value "${aws.sqs.account.access.key}"

aws.sqs.account.access.key财产现在无法解决。

我将此属性注入到我的配置中:

@Configuration
public class SQSConfig {

    @Value("${aws.sqs.account.access.key}")
    private String accessKey;

如何解决?

4

0 回答 0