Apache Commons Configuration

Clone this repo:
  1. 6867c53 Bump org.apache.commons:commons-parent from 103 to 104. by Gary Gregory · 3 days ago master
  2. cd4a33f Fix SpotBugs USO_UNSAFE_ACCESSIBLE_OBJECT_SYNCHRONIZATION in by Gary Gregory · 3 days ago
  3. dc33cda Fix SpotBugs USO_UNSAFE_METHOD_SYNCHRONIZATION in by Gary Gregory · 3 days ago
  4. c1695dd Fix SpotBugs USO_UNSAFE_METHOD_SYNCHRONIZATION in MultiFileConfigurationBuilder. by Gary Gregory · 3 days ago
  5. 1f106d4 Fix SpotBugs USO_UNSAFE_METHOD_SYNCHRONIZATION in FileBasedConfigurationBuilder. by Gary Gregory · 3 days ago

Apache Commons Configuration

Java CI Maven Central Javadocs CodeQL OpenSSF Scorecard

The Commons Configuration software library provides a generic configuration interface that enables an application to read configuration data from various sources and requires Java 8.

Documentation

More information can be found on the Apache Commons Configuration homepage. The Javadoc can be browsed. Questions related to the usage of Apache Commons Configuration should be posted to the user mailing list.

Getting the latest release

You can download source and binaries from our download page.

Alternatively, you can pull it from the central Maven repositories:

<dependency>
  <groupId>org.apache.commons</groupId>
  <artifactId>commons-configuration2</artifactId>
  <version>2.15.1</version>
</dependency>

Building

Building requires a Java JDK and Apache Maven. The required Java version is found in the pom.xml as the maven.compiler.source property.

From a command shell, run mvn without arguments to invoke the default Maven goal to run all tests and checks.

Contributing

We accept Pull Requests via GitHub. The developer mailing list is the main channel of communication for contributors. There are some guidelines which will make applying PRs easier for us:

  • No tabs! Please use spaces for indentation.
  • Respect the existing code style for each file.
  • Create minimal diffs - disable on save actions like reformat source code or organize imports. If you feel the source code should be reformatted create a separate PR for this change.
  • Provide JUnit tests for your changes and make sure your changes don't break any existing tests by running mvn.
  • Before you push a PR, run mvn (without arguments). This runs the default goal which contains all build checks.
  • To see the code coverage report, regardless of coverage failures, run mvn clean site -Dcommons.jacoco.haltOnFailure=false -Pjacoco

If you plan to contribute on a regular basis, please consider filing a contributor license agreement. You can learn more about contributing via GitHub in our contribution guidelines.

License

This code is licensed under the Apache License v2.

See the NOTICE.txt file for required notices and attributions.

Donating

You like Apache Commons Configuration? Then donate back to the ASF to support development.

Additional Resources

Apache Commons Components