SeamFramework.orgCommunity Documentation

第40章 依存性

40.1. JDK の依存性
40.1.1. Sun の JDK 6 に関する注意点
40.2. プロジェクトの依存性
40.2.1. Core
40.2.2. RichFaces
40.2.3. Seam Mail
40.2.4. Seam PDF
40.2.5. Seam Microsoft® Excel®
40.2.6. Seam RSS サポート
40.2.7. JBoss Rules
40.2.8. JBPM
40.2.9. GWT
40.2.10. Spring
40.2.11. Groovy
40.3. Maven を使用した依存性管理

Seam は JDK 1.4 とは動作しないため、 アノテーションや他の JDK 5 機能を使用する JDK 5 またはそれ以降が必要となります。 Seam は Sun の JDK を使い全体的にテストが行われています。 ただし、 他の JDK による Seam 固有の既知の問題はありません。

本セクションでは Seam のコンパイルタイムとランタイムの両方の依存性を列挙します。 タイプが ear と記載されている場合、 ライブラリがアプリケーションの ear ファイルの /lib ディレクトリ内に含まれていなければなりません。 タイプが war と記載されている場合、 ライブラリをアプリケーションの war ファイルの /WEB-INF/lib ディレクトリに配置する必要があります。 依存性のスコープは all、 runtime、 もしくは provided (JBoss AS 4.2 により) のいずれかになります。

最新のバージョン情報および完全な依存性情報は本ドキュメントには含まれていませんが、 /dependency-report.txt に記載されています。 これは /build に格納される Maven POM で生成されます。 ant dependencyReport を実行するとこのファイルを生成することができます。

Maven は推移的依存性の管理に対するサポートを提供するため Seam プロジェクトの依存性管理に使用することができます。 Maven Ant Tasks を使って Maven を Ant のビルドに統合したり、 Maven を使ってプロジェクトのビルドおよびデプロイを行うこともできます。

ここでは Maven の使い方については触れませんが利用できる基本的な POM をいくつか見てみることにします。

Released versions of Seam are available in http://repository.jboss.org/maven2 and nightly snapshots are available in http://snapshots.jboss.org/maven2.

Seam の全アーティファクトは Maven にあります。


<dependency>
  <groupId
>org.jboss.seam</groupId>
  <artifactId
>jboss-seam</artifactId>
</dependency
>

<dependency>
  <groupId
>org.jboss.seam</groupId>
  <artifactId
>jboss-seam-ui</artifactId>
</dependency
>

<dependency>
  <groupId
>org.jboss.seam</groupId>
  <artifactId
>jboss-seam-pdf</artifactId>
</dependency
>

<dependency>
  <groupId
>org.jboss.seam</groupId>
  <artifactId
>jboss-seam-remoting</artifactId>
</dependency
>

<dependency>
  <groupId
>org.jboss.seam</groupId>
  <artifactId
>jboss-seam-ioc</artifactId>
</dependency
>

<dependency>
  <groupId
>org.jboss.seam</groupId>
  <artifactId
>jboss-seam-ioc</artifactId>
</dependency
>

このサンプルの POM は Seam、 JPA (Hibernate により提供される)、 Hibernate Validator を提供しています。


<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion
>4.0.0</modelVersion>
  <groupId
>org.jboss.seam.example/groupId>
  <artifactId
>my-project</artifactId>
  <version
>1.0</version>
  <name
>My Seam Project</name>
  <packaging
>jar</packaging>
  <repositories>
    <repository>
      <id
>repository.jboss.org</id>
      <name
>JBoss Repository</name>
      <url
>http://repository.jboss.org/maven2</url>
    </repository>
  </repositories>

  <dependencies>

    <dependency>
      <groupId
>org.hibernate</groupId>
      <artifactId
>hibernate-validator</artifactId>
      <version
>3.0.0.GA</version>
    </dependency>

    <dependency>
      <groupId
>org.hibernate</groupId>
      <artifactId
>hibernate-annotations</artifactId>
      <version
>3.3.0.ga</version>
    </dependency>

    <dependency>
      <groupId
>org.hibernate</groupId>
      <artifactId
>hibernate-entitymanager</artifactId>
      <version
>3.3.1.ga</version>
    </dependency>

    <dependency>
      <groupId
>org.jboss.seam</groupId>
      <artifactId
>jboss-seam</artifactId>
      <version
>2.0.0.GA</version>
    </dependency>
    
  </dependencies>

</project
>