Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Загрузить нужный .properties файл в зависимости от ОС Spring Boot / 6 сообщений из 6, страница 1 из 1
08.01.2019, 15:31
    #39756776
Tsyklop
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Загрузить нужный .properties файл в зависимости от ОС Spring Boot
Есть два конфигурационных файла для разных ОС windows.properties и unix.properties .

Есть конфигурация:

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
@Configuration
@ConfigurationProperties(prefix = "storage")
public class StorageProperties {

    private String root;
    private String sitesDirName;
    private String avatarsDirName;
    private String screenshotsDirName;

    @PostConstruct
    public void postConstruct() {

    }

}



Как сделать так что бы определенный файл загружался в зависимости от ОС?
Я натыкался на @Conditional , но это одно условие. Может с ним как-то сделать можно?
...
Рейтинг: 0 / 0
08.01.2019, 15:51
    #39756779
chpasha
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Загрузить нужный .properties файл в зависимости от ОС Spring Boot
TsyklopМожет с ним как-то сделать можно?
можно и с ним. в спринге одно и тоже можно сделать десятком способов разной извращенности. самое простое, что мне сразу приходит в голову - через профили. на винде запускать приложение с профилем windows, а на linux с linux
...
Рейтинг: 0 / 0
08.01.2019, 15:55
    #39756780
chpasha
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Загрузить нужный .properties файл в зависимости от ОС Spring Boot
кстати, если использовать вместо properties yaml, то можно вообще любые вариации в одном единственном конфиге описать

Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
spring:
  datasource:
    driver-class-name: org.postgresql.Driver
    url: jdbc:postgresql://public
    username: 
    password: 

--- ### Test profile overrides ###
spring:
  profiles: dev
  datasource:
    url: jdbc:postgresql://local
...
Рейтинг: 0 / 0
08.01.2019, 16:51
    #39756801
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Загрузить нужный .properties файл в зависимости от ОС Spring Boot
Tsyklop, в фазе компилляции эту проблему решают через https://maven.apache.org/guides/introduction/introduction-to-profiles.html
...
Рейтинг: 0 / 0
08.01.2019, 17:10
    #39756806
вадя
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Загрузить нужный .properties файл в зависимости от ОС Spring Boot
Tsyklop,

можно просто определить ось
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
 private static final String OS = System.getProperty("os.name").toLowerCase();

public static String get......() {
        if (OS.contains("win")) {
            return  "windows.properties";
        }
        return "unix.properties";
    }
...
Рейтинг: 0 / 0
09.01.2019, 08:40
    #39756962
Озверин
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Загрузить нужный .properties файл в зависимости от ОС Spring Boot
Tsyklop,

Код: java
1.
@Profile("profile-name")
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Загрузить нужный .properties файл в зависимости от ОС Spring Boot / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]