# NetBeans Maven



## Generic1 (7. Feb 2010)

Hallo,

ich hab bis jetzt meine Programme immer ohne Maven gamacht und wenn ich eine jar benötigt habe, dann habe ich diese jar einfach in der Klassenpfad gegeben und konnte die Klassen in der jar verwenden.
Meine Frage wäre jetzt wie das mit Maven funktioniert, muss ich da die jar in der pom.xml- Datei angeben und wo muss die jar sein.
Wäre sehr dankbar für eine kurze Beschreibung.
Vielen Dank,


----------



## maki (7. Feb 2010)

[xml]
<project ...>

    <dependencies>
...
        <dependency>
            <groupId>dieGroupId</groupId>
            <artifactId>dieArtifaktId</artifactId>
            <version>dieVersion</version>
        <dependency>
...
    </dependencies>

</project>
[/xml]

Mal ernsthaft, so einfach läuft das mit Maven2 nicht, so ganz ohne lesen & verstehen 
Wenn du dafür jetzt keine Zeit etc. hast, wäre es besser nicht auf Maven2 zu setzen, wird sonst sehr frustrierend.


----------



## Generic1 (8. Feb 2010)

OK, das ist mir klar, dass ich die Abhängigkeiten eines Projektes in die Maven- Konfigurationsdatei pom.xml geben, so wie du das aufgeführt hast. Bin auch gerade dabei, dass ich ein Buch über Maven 2.0 lesen und irgendwann muss ich auch anfangen, Maven produktiv einzusetzen.
Was mir noch bewußt ist, der Ordner "target" ist der Ordner, wo das Kompilierte Projekt reinkommt. 
Es gibt auch ein tag, deren Namen mir entfallen ist, wo man angibt, ob eine Abhängigkeit in das ausgelieferte Programm kommt oder nicht (z.B.: JUnit.jar).

Was mir jetzt nicht ganz klar ist, wo die Abhängigkeiten liegen müssen, reicht da wenn ich einen Pfad angebe, der irgendwo zu einem Repository im Netz zeigt oder muss ich die jar selber runterladen und da dann den Verweis in der pom Datei angeben oder ladet Maven die jars selbständig herunter?


----------



## maki (8. Feb 2010)

Maven lädt die Abhängigkeiten selsbtständig aus Repositories, deswegen "Dependency Management".

Du suchst wohl [c]<scope>[/c], welches Maven Buch liest du denn gerade?

Maven: The Definitive Guide | Sonatype
http://repo.exist.com/dist/maestro/1.7.0/BetterBuildsWithMaven.pdf


----------



## Generic1 (8. Feb 2010)

Da müsste ich nachsehen, weiß den Titel nicht auswendig, 
aber das heißt also, dass ich die jars nicht selber runterladen muss sondern das Maven für mich macht,
das heißt aber auch, dass Maven die jars local irgendwo hinschpeichern muss -> kann ich dasn angeben oder gibts da ein Convention over Configuration? 
Besten Dank,


----------



## maki (8. Feb 2010)

Natürlich gibt es dafür eine Konvention in Maven, so wie für alles.

HOME_FOLDER/.m2/repository ist das sog. lokale Repository


----------



## Generic1 (8. Feb 2010)

ok, dann versteh ichs, Maven ohne inter/intranet zugang ist daher ziemlich nutzlos. 
Besten Dank,


----------

