2010-09-02 10 views
1

Je souhaite inclure un log4j dans le package généré par mvn assembly:assembly afin que log4j soit configuré lorsque le .jar généré est exécuté. Comment puis-je faire cela?Comment inclure log4j.properties avec mvn assembly: assembly?

Mon plug-in de montage ressemble à ceci:

<plugin> 
    <artifactId>maven-assembly-plugin</artifactId> 
    <configuration> 
     <archive> 
     <manifest> 
      <mainClass>ibis.structure.Structure</mainClass> 
     </manifest> 
     </archive> 
     <descriptorRefs> 
     <descriptorRef>jar-with-dependencies</descriptorRef> 
     </descriptorRefs> 
    </configuration> 
    </plugin> 
+0

Je pense que fournir quelques détails sur la structure de votre projet et le contenu actuel de votre descripteur d'assembly aiderait. –

+0

Que voulez-vous dire par "log4j est configuré lorsque le .jar généré est exécuté"? Je suppose que ce dont vous avez besoin est d'inclure le fichier log4j.properties dans le fichier .jar ?? – Trimack

+0

Oui, j'ai besoin d'inclure log4j.properties dans le fichier .jar. – Alexandru

Répondre

3

Je veux inclure un log4j dans le paquet généré par l'assemblage mvn: assemblage de sorte que log4j est configuré lorsque le .jar généré est exécuté. Comment puis-je faire cela?

Je ne comprends pas le problème. Mettez le log4j.properties sous src/main/resources et il sera emballé dans votre pot (et finira dans l'assemblage). Y a-t-il un problème avec ça?

+0

Mettre mon fichier log4j.properties sous src/main/resources et reconstruire n'a pas entraîné l'inclusion du fichier. Y a-t-il d'autres choses à faire? – Gerry

+0

Que trouve-t-on dans la section "Ressources"? Vous devez inclure les fichiers .properties. – ggb667

2

Je ne recommanderais pas d'empaqueter le descripteur log4j dans un bocal sinon vous ne pouvez pas changer le niveau de journal sans le reconditionner, ce qui pourrait être pénible. Mieux externaliser votre log4j.properties dans un répertoire sur votre système de fichiers que vous incluez dans le classpath.