When you start a Hazelcast member without passing a Config object, as explained
in the Configuring Programmatically section,
Hazelcast checks the member’s configuration as follows:
-
First, it looks for the
hazelcast.configsystem property. If it is set, its value is used as the path. This is useful if you want to be able to change your Hazelcast configuration; you can do this because it is not embedded within the application. You can set theconfigoption with the following command:-Dhazelcast.config=`*`<path to the hazelcast.xml or hazelcast.yaml>The suffix of the filename is used to determine the language of the configuration. If the suffix is
.xmlthe configuration file is parsed as an XML configuration file. If it is.yaml, the configuration file is parsed as a YAML configuration file.The path can be a regular one or a classpath reference with the prefix
classpath:. -
If the above system property is not set, Hazelcast then checks whether there is a
hazelcast.xmlfile in the working directory. -
If not, it then checks whether
hazelcast.xmlexists on the classpath. -
If not, it then checks whether
hazelcast.yaml(or.yml) exists in the working directory. -
If not, it then checks whether
hazelcast.yaml(or.yml) exists on the classpath. -
If none of the above works, Hazelcast loads the default configuration (
hazelcast.xml) that comes with your Hazelcast package.
Before configuring Hazelcast, please try to work with the default configuration to see if it works for you. This default configuration should be fine for most of the users. If not, you can consider to modify the configuration to be more suitable for your environment.