Maven-Antrun und Abhängigkeiten

(Siehe änderungen unten.)

Den Grund kann ich nicht einfach den classpath, ist, weil ich brauchen, um zu verwalten, einige nicht-java-Bibliotheken, und ich bin der Zusammenstellung einer non-java-Projekt.

Ich versuche, maven-Abhängigkeiten in ein antrun nennen, nach der Dokumentation auf dem maven site:

http://maven.apache.org/plugins/maven-antrun-plugin/examples/classpaths.html

Unten auf der Seite:

<property name="mvn.dependency.jar" 
      refid="maven.dependency.my.group.id:my.artifact.id:classifier:jar.path"/>
<echo message="My Dependency JAR-Path: ${mvn.dependency.jar}"/> 

Kann ich nicht machen diese Arbeit, egal, wie ich versuche. Ich habe versucht ${} um die refid Inhalt, ich habe versucht, Doppelpunkte, Punkte, etc.. als Trennzeichen in jeder Weise, die ich mir denken kann.

Kann mir jemand sagen, was das refid sollte wirklich Aussehen für einige gemeinsame Abhängigkeit?

EDIT:

Vielen Dank für Ihre Antwort.

Mit Ihrem Beispiel SingleShot, ich habe Folgendes:

<plugins>
  <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-antrun-plugin</artifactId>
    <executions>
      <execution>
        <id>create-messages</id>
        <phase>compile</phase>
        <configuration>
          <tasks>
            <property name="build.compiler" value="extJavac"/>
            <property name="compile_classpath" refid="maven.compile.classpath"/>
            <property name="runtime_classpath" refid="maven.runtime.classpath"/>
            <property name="test_classpath" refid="maven.test.classpath"/>
            <property name="plugin_classpath" refid="maven.plugin.classpath"/>

            <property name="log4j.jar" refid="log4j:log4j:jar"/>
            <echo message="Where is the Log4J JAR?: ${log4j.jar}"/>
          </tasks>
        </configuration>
        <goals>
          <goal>run</goal>
        </goals>
      </execution>
    </executions>
    <dependencies>
      <dependency>
        <groupId>log4j</groupId>
        <artifactId>log4j</artifactId>
        <version>1.2.14</version>
      </dependency>
    </dependencies>
  </plugin>

Und hier ist, was ich bekomme beim ausführen von mvn compile:

[INFO] Scanning for projects...
[INFO] ------------------------------------------------------------------------
[INFO] Building Chat Component
[INFO]    task-segment: [compile]
[INFO] ------------------------------------------------------------------------
Downloading: http://<redacted>/content/groups/public/log4j/log4j/1.2.14/log4j-1.2.14.pom
2K downloaded
Downloading: http://<redacted>/content/groups/public/log4j/log4j/1.2.14/log4j-1.2.14.jar
358K downloaded
[INFO] [antrun:run {execution: create-messages}]
[INFO] Executing tasks
[INFO] ------------------------------------------------------------------------
[ERROR] BUILD ERROR
[INFO] ------------------------------------------------------------------------
[INFO] Error executing ant tasks

Embedded error: Reference log4j:log4j:jar not found.
[INFO] ------------------------------------------------------------------------
[INFO] For more information, run Maven with the -e switch
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 3 seconds
[INFO] Finished at: Fri Oct 16 14:54:19 PDT 2009
[INFO] Final Memory: 7M/80M
[INFO] ------------------------------------------------------------------------

EDIT (2):

Blick auf den sourcecode verknüpft entschied ich mich, um "mvn -X compile" und grep für "Speichern", macht sich ein Haufen log-Ausgabe, wo die Dinge sind immer gespeichert.

Interesse sind die Fakten, die die Abhängigkeit ich bin die explizite Angabe von nicht mit in der Liste, und, dass ich beim wechseln auf einen Schlüssel basierend auf einem der Einträge ich tun sehen, ich bekomme immer noch den Fehler.

InformationsquelleAutor Aaron H. | 2009-10-16
Schreibe einen Kommentar