J'ai pom avec les dépendances déclarées A, B et C. Est-il possible de créer un profil qui supprime les dépendances, de sorte que quand je compile avec ce profil, je finis avec les dépendances compilées A et B (sans C)?Dépendance de suppression de profil Maven
Répondre
Je ne connais pas un moyen d'exclure les dépendances de niveau supérieur à l'intérieur d'un profil (<exlusions>
n'est disponible que pour les dépendances transitives). Mais vous pouvez spécifier vos dépendances « normales » dans un profil par défaut et vos dépendances réduites dans un profil séparé comme par exemple:
<profiles>
<profile>
<id>default</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<dependencies>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.14</version>
</dependency>
</dependencies>
</profile>
<profile>
<id>excludeDependency</id>
<dependencies>
</dependencies>
</profile>
</profiles>
avec le profil de la compilation « excludeDependency » échouera si vous utilisez quelque part log4j.
Votre cas d'utilisation n'est pas clair. Peut-être que d'autres solutions comme optional dependencies ou provided dependencies répondront également à vos besoins. Jetez un oeil à ces possibilités.
Ce serait la meilleure solution, je suppose. –
Merci, ça répond à ma question – Kamil
Maven le profil sont additif au profil de base donc j'ai trouvé ce modèle de bonne utilisation des dépendances à l'exclusion:
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.14</version>
</dependency>
</dependencies>
<profiles>
<profile>
<id>Exclude</id>
<dependencies>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.14</version>
<scope>test</scope>
</dependency>
</dependencies>
</profile>
</profiles>
Ensuite, vous « exclure » la dépendance en changeant le champ d'essai. Ne convient pas à tous les usages, mais juste comme une autre option.
- 1. tâche ant récupérer la dépendance de profil maven
- 2. maven question de profil
- 3. Problème de dépendance Maven
- 4. Ordre de dépendance Maven
- 5. Maven problèmes de dépendance
- 6. Maven questions de dépendance
- 7. Résolution de dépendance Maven
- 8. Résolution de dépendance Maven
- 9. Résolution de dépendance Maven
- 10. ActionBarSherlock de dépendance maven
- 11. Maven problème de dépendance
- 12. Suppression de profil ASP.NET
- 13. Problème de dépendance Maven OpenSAML
- 14. Geotools/Maven ordre de dépendance
- 15. Problème de dépendance Maven-Ant
- 16. Confusion de dépendance transitive Maven
- 17. Maven transitive problème de dépendance
- 18. avertissement Maven « profil Redéfinition: « null » ... »
- 19. Un profil maven peut-il hériter d'un autre profil maven?
- 20. Exclure la dépendance dans un profil
- 21. Maven dépendance sans vélo?
- 22. Zest Eclipse dépendance Maven
- 23. Dépendance d'Ejb3 dans Maven
- 24. Dépendance Maven pour GeneratedMockFactory
- 25. mybatis générateur de problème de dépendance Maven
- 26. maven: obtention de détails de dépendance (Equinox)
- 27. Grails maven dépendance résolution
- 28. Profil Maven - Activer le profil en fonction de l'empaquetage
- 29. maven assembly- pour ignorer la dépendance de la dépendance zip
- 30. Maven - Java EE 6 Profil Web Javadocs
Votre question concerne la section '', n'est-ce pas? –
Andrew Logvinov - Righ, les dépendances A, B, C sont déclarées dans la section , je veux supprimer la dépendance C en utilisant profile. Est-ce possible? –
Kamil