MCPcopy
hub / github.com/apache/commons-lang

github.com/apache/commons-lang @main sqlite

repository ↗ · DeepWiki ↗ · compare 2 versions
10,191 symbols 38,073 edges 623 files 4,316 documented · 42%
README

Apache Commons Lang

Java CI Maven Central Javadocs CodeQL OpenSSF Scorecard

Apache Commons Lang, a package of Java utility classes for the classes that are in java.lang's hierarchy, or are considered to be so standard as to justify existence in java.lang.

The code is tested using the latest revision of the JDK for supported LTS releases: 8, 11, 17, 21 and 25 currently. See https://github.com/apache/commons-lang/blob/master/.github/workflows/maven.yml

Please ensure your build environment is up-to-date and kindly report any build issues.

Documentation

More information can be found on the Apache Commons Lang homepage. The Javadoc can be browsed. Questions related to the usage of Apache Commons Lang 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-lang3</artifactId>
  <version>3.20.0</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 Lang? Then donate back to the ASF to support development.

Additional Resources

Apache Commons Components

Please see the list of components

Extension points exported contracts — how you extend this code

ThreadGroupPredicate (Interface)
A predicate for selecting thread groups. @deprecated Use a Predicate. [15 implementers]
src/main/java/org/apache/commons/lang3/ThreadUtils.java
Processor (Interface)
Interface with a method taking Number, annotated @Deprecated [2 implementers]
src/test/java/org/apache/commons/lang3/reflect/MethodUtilsAnnotationsTest.java
ThreadPredicate (Interface)
A predicate for selecting threads. @deprecated Use a Predicate. [16 implementers]
src/main/java/org/apache/commons/lang3/ThreadUtils.java
Foo (Interface)
(no doc) [4 implementers]
src/test/java/org/apache/commons/lang3/reflect/testbed/Foo.java
FailableCallable (Interface)
A functional interface like java.util.concurrent.Callable that declares a Throwable. TODO for 4.0: M [6 implementers]
src/main/java/org/apache/commons/lang3/Functions.java
Bar (Interface)
(no doc) [3 implementers]
src/test/java/org/apache/commons/lang3/reflect/testbed/Bar.java
FailableRunnable (Interface)
A functional interface like Runnable that declares a Throwable. TODO for 4.0: Move to org.apache.com [19 implementers]
src/main/java/org/apache/commons/lang3/Functions.java
GenericConsumer (Interface)
(no doc) [2 implementers]
src/test/java/org/apache/commons/lang3/reflect/testbed/GenericConsumer.java

Core symbols most depended-on inside this repo

isSameLength
called by 1441
src/main/java/org/apache/commons/lang3/ArrayUtils.java
valueOf
called by 952
src/main/java/org/apache/commons/lang3/StringUtils.java
get
called by 695
src/main/java/org/apache/commons/lang3/mutable/Mutable.java
getClass
called by 667
src/main/java/org/apache/commons/lang3/ClassUtils.java
isJavaVersionMatch
called by 599
src/main/java/org/apache/commons/lang3/SystemUtils.java
isJavaVersionAtLeast
called by 553
src/main/java/org/apache/commons/lang3/SystemUtils.java
isJavaVersionAtMost
called by 544
src/main/java/org/apache/commons/lang3/SystemUtils.java
getComponentType
called by 432
src/main/java/org/apache/commons/lang3/ArrayUtils.java

Shape

Method 9,093
Class 975
Interface 101
Enum 22

Languages

Java100%

Modules by API surface

src/test/java/org/apache/commons/lang3/ArrayUtilsTest.java374 symbols
src/test/java/org/apache/commons/lang3/ValidateTest.java298 symbols
src/test/java/org/apache/commons/lang3/function/FailableTest.java245 symbols
src/main/java/org/apache/commons/lang3/SystemProperties.java198 symbols
src/test/java/org/apache/commons/lang3/StringUtilsTest.java166 symbols
src/main/java/org/apache/commons/lang3/StringUtils.java156 symbols
src/test/java/org/apache/commons/lang3/math/NumberUtilsTest.java151 symbols
src/test/java/org/apache/commons/lang3/reflect/TypeUtilsTest.java136 symbols
src/test/java/org/apache/commons/lang3/builder/EqualsBuilderTest.java129 symbols
src/test/java/org/apache/commons/lang3/builder/ToStringBuilderTest.java126 symbols
src/test/java/org/apache/commons/lang3/reflect/MethodUtilsTest.java120 symbols
src/main/java/org/apache/commons/lang3/builder/ToStringStyle.java98 symbols

Dependencies from manifests, versioned

org.apache.commons:commons-text
org.easymock:easymock5.6.0 · 1×
org.junit-pioneer:junit-pioneer
org.junit.jupiter:junit-jupiter
org.mockito:mockito-inline
org.openjdk.jmh:jmh-core
org.openjdk.jmh:jmh-generator-annprocess

For agents

$ claude mcp add commons-lang \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact