目次へ

2006.06.28 株式会社四次元データ 鈴木 圭

3.1.3. 実際に依存性の指定を行う

それでは実際に依存性の指定を行ってみましょう。

ここでは例として Commons Lang に対する依存性を指定します。

3.1.3.1. Maven Repo Search で Commons Lang を検索する

Maven Repo Searchで「Commons Lang」というキーワードで検索します (JAR を検索したいので、「TYPE:」では「jar」を選択しておきます)。検索結果は以下の通りでした:

Maven Repo Search での検索結果

これを見ると、Commons Lang の groupId と artifactId はどちらも「commons-lang」であり、バージョン 1.0 から 2.1 までが登録されていることが分かります。

3.1.3.2. pom.xml で依存性の指定を行う

それでは Commons Lang の情報を pom.xml に加えます。ここでは Commons Lang のバージョンは 2.1、スコープは省略 (デフォルトである「compile」) とします:

<project ...>
  ...
  <dependencies>
    ...
    <dependency>
      <groupId>commons-lang</groupId>
      <artifactId>commons-lang</artifactId>
      <version>2.1</version>
    </dependency>
    ...
  </dependencies>
  ...
</project>

以上で依存性の指定は終わりです。

3.1.4. ライブラリをローカルリポジトリにインストールする

Sun の提供しているライブラリなど、リモートリポジトリに登録されていないライブラリは、手作業でローカルリポジトリにインストールしなければなりません。

ライブラリをローカルリポジトリにインストールするには、次のコマンドを使用します(改行せずに一つのコマンドとして実行):

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

このとき、file パラメータにはインストールするライブラリのパスを指定します。groupId と artifactId, version には適当な値を指定します。packaging にはそのライブラリのパッケージングの種類 (大抵は「jar」) を指定します。

例えば、activation.jar のバージョン 1.1 をインストールには次のコマンドを実行します:

mvn install-file -Dfile=activation.jar
                 -DgroupId=javax.activation
                 -DartifactId=activation
                 -Dversion=1.1
                 -Dpackaging=jar

このとき、groupId や artifactId などには適当な値を指定することができますが、Sun の提供しているライブラリに関しては、以下に示す groupId と artifactId で登録することが推奨されています:

ProductgroupIdartifactId
Java Activation Frameworkjavax.activationactivation
J2EEjavax.j2eej2ee
JDOjavax.jdojdo
JMSjavax.jmsjms
JavaMailjavax.mailmail
EJB 3javax.persistenceejb
J2EE Connector Architecturejavax.resourceconnector
J2EE Connector Architecture APIjavax.resourceconnector-api
Java Authentication and Authorization Servicejavax.securityjaas
Java Authorization Contract for Containersjavax.securityjacc
Servletjavax.servletservlet-api
Servlet JSPjavax.servletjsp-api
Servlet JSTLjavax.servletjstl
JDBC 2.0 Optional Packagejavax.sqljdbc-stdext
Java Transaction API (JTA)javax.transactionjta
Java XML RPCjavax.xmljaxrpc
Portletjavax.portletportlet-api
JNDIjavax.namingjndi

↑このページの先頭へ

こちらもチェック!

PR
  • XMLDB.jp