cfg4j sample app (uses classpath as configuration store)
App demonstrating how to access configuration stored in a classpath files using cfg4j library. Uses multiple configuration files.
> cd cfg4j-sample-apps/
> ./gradlew build
> java -jar classpath-bind/build/libs/classpath-bind-1.0.0-SNAPSHOT.jar
// Specify which files to load. Configuration from both files will be merged.
ConfigFilesProvider configFilesProvider = () -> Arrays.asList(new File("application.yaml"), new File("otherConfig.properties"));
// Use classpath repository as configuration store
ConfigurationSource source = new ClasspathConfigurationSource(configFilesProvider);
// Create provider
return new ConfigurationProviderBuilder()
.withConfigurationSource(source)
.build();
}
// Define configuration interface
public interface ReksioConfig {
URL homepage();
...
}
ReksioConfig reksioConfig = configurationProvider.bind("reksio", ReksioConfig.class);
URL url = reksioConfig.homepage();