Home > OS >  Built-in version properties for log4j and lombok
Built-in version properties for log4j and lombok

Time:12-15

I have found some sample maven pom.xml files that use "built-in" properties to specify the versions for logj42 and lombok. However, I cannot find where these properties are documented? If I didn't know I could use these properties, where could I look to see what "custom" properties are supported by a given package?

How can I find that log4j2 supports a "log4j2.version" property and lombok supports a "lombok.version" property? These are part of a Spring Boot application, are these properties associated with Spring Boot?

Example:

  <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.6.1</version>
        <relativePath/>
    </parent>

   <properties>
        <lombok.version>1.18.10</lombok.version>
        <log4j2.version>2.15.0</log4j2.version>
    </properties>

CodePudding user response:

The properties lombok.version and log4j2.version have no special meaning for Maven nor any of its plugins.

These properties are defined in the parent POM (spring-boot-dependencies) of your parent project (spring-boot-starter-parent) and are used to perform variable substitutions of the form ${log4j2.version} in the same file.

Download the spring-boot-dependencies POM file to see the names of hundreds of other properties defined in that file. As you already noticed, you can override their value in your own pom.xml.

  • Related