Как определить, что очереди SQS не существует?

#java #amazon-web-services #queue #spring-cloud #amazon-sqs

Вопрос:

Я ожидал бы, что если очередь SQS, указанная в следующей аннотации, не существует, Spring выдаст исключение NonExistentQueue во время запуска.

 @SqsListener(value = "nonExistingQueue", deletionPolicy = SqsMessageDeletionPolicy.ALWAYS)  

Но почему-то в моем случае не возникает никаких исключений, и приложение будет запущено без очереди. Почему не будет создано никаких исключений? Может ли он быть каким-то образом отключен? Извините, я довольно новичок в AWS. Моя цель состоит в том, чтобы мое приложение даже не могло запуститься без очереди. Если бы было создано исключение, было бы этого достаточно, или, может быть, мне нужно создать метод @PostConstruct, который проверяет наличие и вручную создает исключение?

Мои владения:

 cloud.aws.credentials.access-key=accesKey cloud.aws.credentials.secret-key=secretKey cloud.aws.region.auto=false cloud.aws.region.static=eu-central-1 cloud.aws.stack.auto=false  

Когда я создаю очередь SQS, которая нужна SqlListened, приложение работает нормально. Вот мой пом, чтобы проверить мои зависимости:

 lt;dependencygt;  lt;groupIdgt;com.amazonawslt;/groupIdgt;  lt;artifactIdgt;aws-java-sdk-s3lt;/artifactIdgt;  lt;versiongt;1.11.792lt;/versiongt;  lt;/dependencygt;  lt;dependencygt;  lt;groupIdgt;org.springframework.cloudlt;/groupIdgt;  lt;artifactIdgt;spring-cloud-aws-autoconfigurelt;/artifactIdgt;  lt;versiongt;2.2.5.RELEASElt;/versiongt;  lt;/dependencygt;  lt;dependencygt;  lt;groupIdgt;org.springframework.cloudlt;/groupIdgt;  lt;artifactIdgt;spring-cloud-aws-contextlt;/artifactIdgt;  lt;versiongt;2.2.5.RELEASElt;/versiongt;  lt;/dependencygt;  lt;dependencygt;  lt;groupIdgt;org.springframework.cloudlt;/groupIdgt;  lt;artifactIdgt;spring-cloud-aws-messaginglt;/artifactIdgt;  lt;versiongt;2.2.5.RELEASElt;/versiongt;  lt;/dependencygt;  

Большое спасибо.