2016-04-13 4 views
0

Guys Ich muss herausfinden, eine Möglichkeit, Abhängigkeit einzuschließen oder auszuschließen, während ich meinen Code in Maven (Maven-Compiler-Plugin) kompilieren, ich möchte nicht alle Abhängigkeit in meinem Klassenpfad enthalten, nur wenige von denen, die sein werden Wird von der Java-Klassendatei verwendet, um kompiliert zu werden.Wie kann man Abhängigkeiten in maven-compiler-plugin ausschließen?

Gibt es etwas, das zu tun?

+0

Ich bin nicht sicher, ich verstehe die Frage. Kannst du ein Beispiel geben? Warum sollte der Maven-Standard-Ausschließungsmechanismus nicht für Ihre Anforderung funktionieren? – sisyphus

+0

Sie können das Element "scope" verwenden. Sehen Sie hier die Antwort: http://stackoverflow.com/questions/6646959/difference-between-maven-scope-compile-and-provided-for-jar-packaging – chrisl08

+0

Dank für einen Kommentar Jungs, Meine Anforderung wie: Ich habe Klasse A, die zwei mal mit gleicher Abhängigkeit aber unterschiedlicher Version kompiliert werden sollte (Zwei verschiedene jar fast gleiche Implementierung mit wenigen Änderungen). daher brauche ich eine Abhängigkeit zu einer Zeit zwei kompilieren meine Klasse A. – Afgan

Antwort

0

Sie müssen den Umfang der bereitgestellten Abhängigkeit angeben. Dadurch wird angenommen, dass die Abhängigkeiten zur Laufzeit verfügbar sind. z.B.

<dependency> 
    <groupId>group-a</groupId> 
    <artifactId>artifact-b</artifactId> 
    <version>1.0</version> 
    <scope>provided</scope> 
</dependency> 

Es ist hier viel besser erklärt -

Dependency scope

+0

Danke für die Antwort, beziehen Sie bitte meine Anforderung von meinem Kommentar in Frage, ich kenne grundlegende Abhängigkeitsbereich, muss ich Abhängigkeit in meinem Maven Compiler-Plugin einige wie angeben. Ich hoffe du verstehst es. – Afgan