Maven Mojo

Hallo zusammen,
ich möchte ein Mojo schreiben welches von einer gegebenen pom.xml liest und in der pom.xml dependecies sucht dann die versionen ausgibt, alle dependencies sind auch Mojos
z.B.

      <dependency>
         <groupId>de.control.fw.impctrl.bl</groupId>
         <artifactId>fw.impctrl.bl.log-api</artifactId>
      </dependency>
      <dependency>
         <groupId>de.control.fw.impctrl.bl</groupId>
         <artifactId>fw.impctrl.bl.execution-api</artifactId>
      </dependency>

mein mojo soll das lesen und mir die versionen ausgeben…
Ich habe bisher leider nicht viel gefunden ich hoffe hier kann mir jemand helfen

brauchst keine poms lesen.

 * My super duper maven plugin
 * 
 * @goal theGoal
 * 
 * @requiresDependencyResolution compile
 */
public class PersonalMojo extends AbstractMojo {
    /**
     * The Maven Project.
     * 
     * @parameter expression="${project}"
     * @required
     * @readonly
     */
    private final MavenProject project = null;

    public void execute() throws MojoExecutionException {
        List<Dependency> dependencies = project.getDependencies();
        for (Dependency dep : dependencies) {
            // alle informationen ueber eine dependency dann
        }
    }
}

dein plugin braucht dann eine abhaengigkeit zu maven-plugin-api

Danke für die schnelle Antwort
Also so wie ich das verstanden habe nimmt das Mojo nur die Abhängigkeiten die in der eigenen pom.xml drin stehen oder?

Ich muss aber genau die Abhängigkeiten in einer gegebenen pom.xml lesen deswegen muss ich die Datei erstmal lesen
und “MavenProject” kann nicht gefunden werden muss ich dafür in libraries hinzufügen

oeh was ?

nein.

du schreibst dein Plugin welches die dependencies eines projektes ermittelt.

Bei Projekt X fuegst du dann dein Plugin hinzu und es ermittelt dann die Deps von Projekt X.
Bei Projekt Y fuegst du dann dein Plugin hinzu und es ermittelt dann die Deps von Projekt Y.

argh sorry - org.apache.maven.apache-maven musst du als abhängig deines plugins noch hinzufuegen… da isses drin (MavenProject)

Das Plugin brauche ich für die Arbeit und es soll in der Kommandozeile aufgerufen werden.
Dann liest es halt die abhängigkeiten von pom.xml datei, dessen path ich in java geschrieben hab und gibt die versionen aus.

Ich bin auch etwas verwirrt ob das überhaupt möglich ist, der Chef meinte dass das geht (er hat aber selber nicht viel Ahnung :))

Also die Frage ist eigentlich ob ich mit einem Plugin eine .xml Datei lesen kann z.B. die groupId und artifactId lesen und dann die version ermitteln. Dazu habe ich einiges im Internet gefunden aber ich muss erstmal schaffen die datei zu lesen

http://www.java-forum.org/deployment/103792-maven.html

an zwei stellen zu diskutieren ist unsinn…

[QUOTE=deathbyaclown]

an zwei stellen zu diskutieren ist unsinn…[/QUOTE]

Sehe ich wie dbac - also zu.