mvn install:install-file
コンパイルフェーズの前に相当するものを実行する方法。lib/foo-1.0.0.jar
Mavenリポジトリに存在しないファイルがあります。そのため、mvn install:install-fileを使用して手動でインストールし、コンパイルフェーズ中に依存関係としてこれを配置します。ただし、ファイルがローカルリポジトリにインストールされていない場合は、コンパイルエラーで失敗します。コンパイル前にこれを自動的にインストールするようにMavenに指示するにはどうすればよいですか?
質問する
3145 次
2 に答える
2
システム依存スコープを使用する
<dependency>
<groupId>com.company.groupId</groupId>
<artifactId>foo</artifactId>
<version>1.0.0</version>
<scope>system</scope>
<systemPath>${basedir}/lib/foo-1.0.0.jar</systemPath>
</dependency>
${basedir}
-あなたのpom.xml
編集
のディレクトリであり、あなた
も使用することができますbuild-helper-maven-plugin
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>1.7</version>
<executions>
<execution>
<id>attach-artifacts</id>
<phase>package</phase>
<goals>
<goal>attach-artifact</goal>
</goals>
<configuration>
<artifacts>
<artifact>
<file>${basedir}/lib/foo-1.0.0.jar</file>
<type>jar</type>
<classifier>optional</classifier>
</artifact>
</artifacts>
</configuration>
</execution>
</executions>
</plugin>
于 2012-08-22T19:01:27.613 に答える
1
Nexusなどの全社的なMavenプロキシをインストールし、そこにアーティファクトを配置します。settings.xml
各開発者は、そのプロキシを指すように変更する必要があります。jarをバージョン管理にチェックインすることは、特に分散SCMに移行する場合は、一般的に悪い考えです。
于 2012-08-23T08:09:18.597 に答える