web-dev-qa-db-ja.com

Maven 2にアーティファクトを手動でインストールする方法は?

Maven 2でアーティファクトを手動でインストールしようとしたときに、いくつかのエラーが発生しました。コマンドを使用してローカルディレクトリからjarをインストールしたかったです。

mvn install:install-file -Dfile=jta-1.0.1B.jar

しかし、Mavenは次のようなビルドエラーを返しました。

Invalid task '.01B.jar': you must
specify a valid lifecycle phase, or a
goal in the format plugin:goal or
pluginGroupId:pluginArtifactId:pluginVersion:goal

私のコマンドに間違いはありますか?

93
liangzan

GroupId、artifactId、およびアーティファクトのバージョンを示す必要があります。

mvn install:install-file \
  -DgroupId=javax.transaction \
  -DartifactId=jta \
  -Dpackaging=jar \
  -Dversion=1.0.1B \
  -Dfile=jta-1.0.1B.jar \
  -DgeneratePom=true
144
Romain Linsolas

Mavenの サードパーティJARのインストールのガイド によると、コマンドは次のとおりです。

mvn install:install-file -Dfile=<path-to-file> -DgroupId=<group-id> \
-DartifactId=<artifact-id> -Dversion=<version> -Dpackaging=<packaging>

あなたは確かにパッケージングオプションが必要です。これは元の質問に答えます。

今、あなたのコンテキストでは、Sunが提供するjarファイルと戦っています。 Sun JARに対処する ページも読む必要があります。そこで、MavenがSun jarの場所に関するより良い情報を提供する方法、およびJava.netを追加する方法を学習します Maven 2リポジトリ whichcontainsjta-1.0.1B.jar。これを追加してください settings.xml(ポータブルではない)または pom.xml(ポータブル):

  <repositories>
    <repository>
      <id>maven2-repository.dev.Java.net</id>
      <name>Java.net Repository for Maven</name>
      <url>http://download.Java.net/maven/2/</url>
      <layout>default</layout>
    </repository>
  </repositories>
38
Pascal Thivent

パッケージを追加する必要があったので:

mvn install:install-file \
  -DgroupId=javax.transaction \
  -DartifactId=jta \
  -Dversion=1.0.1B \
  -Dfile=jta-1.0.1B.jar \
  -DgeneratePom=true \
  -Dpackaging=jar
13
David Durham

答えは、ダッシュをエスケープすることです!

http://www.mail-archive.com/[email protected]/msg83991.html

8
S. Bollweber

Windows PowerShellの使用時に同様のエラーが発生した場合は、Windowsの単純なコマンドラインを試してください。何が原因かはわかりませんが、PowerShellはMavenのパラメーターの一部を解釈しているようです。

4
Koraktor

投稿されたすべての回答は、厳密にMavenの観点からこれを正しく議論しています。私の問題は、NetBeansをプライマリIDEとして使用して、mavenに対してこのインストールを行うことでした。以下の記事が参考になりました。

次のnetbeansフォーラムの記事の功績: http://forums.netbeans.org/topic22907.html

  1. Mavenプロジェクトで[依存関係の追加]ダイアログを開きます
  2. いくつかのgroupId、artifactId、およびバージョンを作成し、それらを入力します、OK。
  3. 依存関係がpom.xmlに追加され、mavenプロジェクトの「ライブラリ」ノードの下に表示されます
  4. Libノードを右クリックし、「アーティファクトを手動でインストール」して、jarへのパスを入力します。 Jarは、手順2)で入力した座標でローカルのMavenリポジトリにインストールする必要があります
2
Paul