2010-03-18 7 views
3

Je rencontre un problème dans ma build maven récemment, qu'il télécharge un fichier jar pour javamail-1.4.jar ou quelque chose, mais il s'avère que le fichier n'est pas un vrai fichier jar, c'est en fait un html avec un lien vers où trouver le bon pot.Problème Maven avec le fichier jar invalide qui est en fait html

il semble que le repo a changé pour cela. mais dans mon cadre maven tout est supposé aller à notre repo interne, je ne sais pas comment cela est arrivé. mais de toute façon, plus important encore, comment puis-je résoudre ce problème afin qu'il télécharge le fichier JAR correct sur une nouvelle installation?

merci!

Répondre

1

Vous avez téléchargé ce fichier avant l'installation de votre settings.xml pour utiliser le référentiel d'entreprise ~ ou le référentiel d'entreprise contient la version dont vous disposez. Donc, d'abord vérifiez ce que contient réellement le dépôt interne (si l'artefact javamail n'est pas l'artefact attendu, téléchargez-le et installez-le dans votre dépôt interne). Supprimez ensuite l'artefact du référentiel local pour le télécharger à nouveau.

Mise à jour: Ma compréhension est que vous obtenez cette dépendance transitoire de log4j donc vous devez utiliser log4j 1.2.15. Pour résoudre le problème, installez la dépendance manquante dans votre référentiel interne, ou revenir à LOG4J 1.2.14, ou exclure les dépendances de transitifs log4j 1.2.15:

<dependency> 
    <groupId>log4j</groupId> 
    <artifactId>log4j</artifactId> 
    <version>1.2.15</version> 
    <exclusions> 
    <exclusion> 
     <groupId>javax.mail</groupId> 
     <artifactId>mail</artifactId> 
    </exclusion> 
    <exclusion> 
     <groupId>javax.jms</groupId> 
     <artifactId>jms</artifactId> 
    </exclusion> 
    <exclusion> 
     <groupId>com.sun.jdmk</groupId> 
     <artifactId>jmxtools</artifactId> 
    </exclusion> 
    <exclusion> 
     <groupId>com.sun.jmx</groupId> 
     <artifactId>jmxri</artifactId> 
    </exclusion> 
    </exclusions> 
</dependency> 
bien
+0

, il semble que c'est en fait le log4j qui est en utilisant le javamail jar et c'est invalide. comment puis-je résoudre ce problème? – fei