私はEclipse内でMavenを扱う状況に陥り、展開するコードを含む多くの成果物で終わります。非常にうまく動作します。私たちのターゲットプラットフォームの実行可能なjarを構築するための汎用pom.xml:実行時にdependency groupId/artifactId/versionを指定する方法を教えてください。
一つは、非常に特定の場所にはっきりという名前の実行可能jarファイルを起動し、実験のビットの後、私はもっぱらに応じて新しいのpom.xmlを持つことによって、適切な実行可能なjarファイルを作成することができることを見出しましたEclipseプロジェクトから作成されたアーティファクトは、最初にコピー依存関係を呼び出してアーティファクトから依存関係を取得し、正しい場所に空のjarを作成しますが、メインクラスとクラスパスはマニフェストに正しく設定されます。
私たちのテストプロジェクトではうまくいきましたが、一般化したいので、呼び出し時に展開するartifactのgroupId/artifactId /バージョンを提供する必要があります。
私は正確に記入することが
<dependencies>
<dependency>
<groupId>${artifact.groupId}</groupId>
<artifactId>${artifact.artifactId}</artifactId>
<version>${artifact.version}</version>
</dependency>
</dependencies>
を期待し
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>properties-maven-plugin</artifactId>
<version>1.0-alpha-2</version>
<executions>
<execution>
<phase>initialize</phase>
<goals>
<goal>read-project-properties</goal>
</goals>
<configuration>
<files>
<file>foobar.properties</file>
</files>
</configuration>
</execution>
</executions>
</plugin>
のような性質-のmaven-pluginのを試してきました。残念ながら、Mavenは文句:
[ERROR] 'dependencies.dependency.artifactId' for ${artifact.groupId}:${artifact.artifactId}:jar with value '${artifact.artifactId}' does not match a valid id pattern. @ line 85, column 19
[ERROR] 'dependencies.dependency.groupId' for ${artifact.groupId}:${artifact.artifactId}:jar with value '${artifact.groupId}' does not match a valid id pattern. @ line 84, column 16
[ERROR] 'dependencies.dependency.version' for ${artifact.groupId}:${artifact.artifactId}:jar must be a valid version but is '${artifact.version}'. @ line 86, column 16
だけが単一の依存関係があります。私は何をしたいのですか?
ありがとうございました。私はまだMavenとその考え方については新しいです。 –
私は毎回新しいpom.xmlというアイディアが好きではありませんが、pom.xmlが完全であることは好きです(含まれていないプロパティに依存するのではなく)。私はこの仕事をしました。他の人への注釈:_not_にはテンプレート変数にピリオドがありますか? –