Maison  >  Article  >  Java  >  Java Spring Boot utilise la connexion à un projet Gradle

Java Spring Boot utilise la connexion à un projet Gradle

DDD
DDDoriginal
2024-10-19 06:16:02705parcourir

La motivation ici est que j'ai passé trop de temps à essayer de comprendre comment ajouter la journalisation avec log4j au Spring Boot dans gradle. Ici, la partie gradle était celle qui m'a causé le plus de chagrin car toutes les documentations que j'ai pu trouver étaient pour maven.

Je documente donc mes découvertes ici afin que la prochaine personne qui recherche cela puisse trouver mon message et puisse le comprendre rapidement.

C'est la configuration que j'utilise pour la démo. J'ai également testé la même implémentation dans Java 17.

Java Spring Boot use login a gradle project

Ajoutez cette ligne au build.gradle

configurations {
    all*.exclude module : 'spring-boot-starter-logging'
}

dependencies {
    ...
    implementation "org.springframework.boot:spring-boot-starter-log4j2"
}

Créez un fichier nommé log4j2.xml dans le dossier src/main/resources et ajoutez-le au fichier

<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="INFO">
    <Appenders>
        <Console name="console" target="SYSTEM_OUT">
            <PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %-5level %logger{36} - Message: %msg%n"/>
        </Console>
    </Appenders>
    <Loggers>
        <Root level="trace">
            <AppenderRef ref="console"/>
        </Root>
    </Loggers>
</Configuration>

Votre configuration est terminée, vous pouvez maintenant ajouter un enregistreur depuis log4j et il utilisera cette configuration XML. Notez que j'ai ajouté un Message : dans chaque message. Donc si vous ne le souhaitez pas, vous pouvez simplement le supprimer. Je l'ai ajouté ici afin de pouvoir tester si le projet utilisait ou non ce fichier XML.

Maintenant, pour tester, vous pouvez simplement utiliser l'enregistreur log4j. Vous pouvez l'ajouter dans la méthode principale.

// import org.apache.logging.log4j.LogManager;
// import org.apache.logging.log4j.Logger;

Logger logger = LogManager.getLogger(SpringApplication.class);
logger.info("Hello World!");

La configuration de l'enregistreur devrait fonctionner comme prévu. Notez le message : partie.

Java Spring Boot use login a gradle project

Vous pouvez retrouver le projet ici

Références

  1. (https://www.sentinelone.com/blog/started-quickly-spring-boot-logging/)[https://www.sentinelone.com/blog/started-quickly-spring-boot-logging/ ]
  2. (https://github.com/minhaz1217/devops-notes/tree/master/78. Java Spring Boot utilise log4j dans un projet Gradle)[https://github.com/minhaz1217/devops-notes/tree /maître/78. Java Spring Boot utilise log4j dans un projet Gradle]
  3. Le projet factice

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Article précédent:Premiers pas avec MavenArticle suivant:Premiers pas avec Maven