Я определил путь к своим учетным данным в application.properties следующим образом:
Код: Выделить всё
myapp.google.credentials.path=classpath:vm-dev-393108-80d765f9af09.json
Код: Выделить всё
@Configuration
public class BigQueryConfig {
@Value("${myapp.google.credentials.path}")
private String googleCredentialsPath;
@Bean
public GoogleCredentials googleCredentials() {
try (FileInputStream serviceAccountStream = new FileInputStream(googleCredentialsPath)) {
return GoogleCredentials.fromStream(serviceAccountStream);
} catch (IOException e) {
throw new RuntimeException("Failed to load BigQuery credentials", e);
}
}
@Bean
public BigQuery bigQuery(GoogleCredentials credentials) {
return BigQueryOptions.newBuilder().setCredentials(credentials).build().getService();
}}
java.io.FileNotFoundException: ресурс пути к классу [vm-dev-393108-80d765f9af09.json] не может быть открыт, поскольку он не существует
Я проверил путь к файлу несколько раз, и это кажется правильным. Я не понимаю, почему Spring не может найти мой файл JSON.
Буду очень признателен за любую помощь. Спасибо!
Я новый разработчик Spring Boot и впервые пытаюсь установить соединение с Google BigQuery из приложения Spring Boot. Я разрабатываю свое приложение в Gitpod, онлайн-среде разработки.
До сих пор я пробовал разные способы определения пути к моему файлу учетных данных JSON:
Сначала я использовал полный путь, например my-todo/src/main/resources/vm-dev-393108-80d765f9af09.json, но это не сработало.
Затем я попытался скопировать относительный путь из контекстного меню в своей IDE и использовал этот путь в файле application.properties, но приложению все равно не удалось найти файл JSON.
Я ожидаю, что когда я запущу приложение Spring Boot, оно сможет использовать предоставленный путь для поиска файла JSON, загрузки учетных данных и успешного подключения к BigQuery.
Однако независимо от того, как я определяю путь к моему JSON файл, я продолжаю сталкиваться с FileNotFoundException, сообщающим, что файл JSON не существует, хотя файл действительно существует в моем проекте.
Я не уверен, что есть что-то конкретное в Spring, Gitpod или моя относительная неопытность, которая вызывает эту проблему. Я подозреваю, что в рабочей области Gitpod могут быть некоторые ограничения или особенности, которые не позволяют ему получить доступ к файлу JSON, расположенному внутри самой рабочей области. Мне очень хочется понять, какую ошибку я совершаю, и научиться ее исправлять.
Помните: чем больше контекста и подробностей вы предоставите, тем легче другим будет вам помочь!