Getting Started

To get started you need to include three dependencies in your project.

JBoss Logging

Required at compile time and runtime.

JBoss Logging Annotations

Required at compile time only.

JBoss Logging Processor

Required at compile time only.

If you’re using maven here is an example pom.xml snippet:

<project>
    <dependencies>
        <!-- Required by the annotation processor and will be used at runtime -->
        <dependency>
            <groupId>org.jboss.logging</groupId>
            <artifactId>jboss-logging</artifactId>
        </dependency>

        <dependency>
            <groupId>org.jboss.logging</groupId>
            <artifactId>jboss-logging-annotations</artifactId>
            <version>3.0.2.Final</version>
            <!-- This is a compile-time dependency of this project, but is not needed at compile or runtime by other
                  projects that depend on this project.-->
            <scope>provided</scope>
            <optional>true</optional>
        </dependency>
    </dependencies>
    <build>
        <pluginManagement>
            <plugins>
                <plugin>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <configuration>
                        <!-- Define the annotation processor path. This is required on Java 22+. The other option is to
                             pass the -proc:full javac argument. -->
                        <annotationProcessorPaths>
                            <path>
                                <groupId>org.jboss.logging</groupId>
                                <artifactId>jboss-logging-processor</artifactId>
                                <version>3.0.2.Final</version>
                            </path>
                        </annotationProcessorPaths>
                    </configuration>
                </plugin>
            </plugins>
        </pluginManagement>
    </build>
</project>

Once your project is configured you can create either a message bundle interface or a message logger interface. For detailed information see the JavaDocs for the annotations.