(下記の編集を参照してください。)MavenのAntrunと依存
私はクラスパスを使用することはできません理由は、私はいくつかの非Javaライブラリを管理する必要があるためである、と私は非をコンパイルしていますJavaプロジェクト。
<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}"/>
私ができる:ページの下部にある
http://maven.apache.org/plugins/maven-antrun-plugin/examples/classpaths.html
:私はMavenのサイト上の文書、以下、antrun呼び出しでMavenの依存関係を使用しようとしている
どのように試してもこの仕事はできません。私はrefidの内容の周りに$ {}を試しました、私はコロン、ピリオドなどを試しました。私が考えることのできるあらゆる方法でセパレータとして。
誰も私にそのrefidは何かを教えてください本当にはいくつかの共通の依存のように見える?
EDIT:あなたの返信用
感謝。あなたの例SINGLESHOTを使用して
は、私は次のようしている:
[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):
探し
<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>
そしてここでは、MVNのコンパイルを実行したときに、私は何を得るのですリンクされたソースコードで、 "mvn -X compile"を実行し、 "Storing"のgrepを実行することにしました。 g保存される。興味深いのは
私はエントリのいずれかに基づいてキーに切り替えたとき、私はが見るんことを、私は明示的に指定しています依存関係がリストに表示されていない事実であり、私はまだ取得しますエラー。
申し訳ありません。私の元の答えは "maven.dependency"を逃した。接頭辞と ".path"接尾辞。これは修正されており、動作するはずです。プラグインソースの87行目(上にリンクされています)を見て、どのように見えるかを見てください。 – SingleShot