// 下階層用テンプレート
#topicpath
----
//ここにコンテンツを記述します。
#contents

**リポジトリにプロキシ経由で接続する [#q56c97dc]
"C:\[ユーザディレクトリ]\.m2\settings.xml"
 ~/.m2/settings.xml"
に以下の記述を書いておきます。

 <settings>
   <proxies>
     <proxy>
       <active>true</active>
       <protocol>http</protocol>
       <host>hogehoge.jp</host>
       <port>81</port>
       <username>fuga</username>
       <password>fuga</password>
       <nonProxyHosts>www.google.com|*.hoge.jp</nonProxyHosts>
     </proxy>
   </proxies>
 </settings>
-[[Maven事始め>http://www.limy.org/program/java/maven/first.html]]


**プロジェクト作成。 [#bf93876d]
 mvn archetype:create -DgroupId=nu.mine.kino.mavensample -DartifactId=kino-app
グループIDとプラグインIDを指定するんですね。

**pom.xmlからEclipseのプロジェクトを生成する。 [#gab0f1a9]
 mvn eclipse:eclipse
これでEclipse関連のファイルができあがります。以後、Eclipse上で管理できるわけですね。

出力されるファイル内で
 M2_REPO
という変数を使用しているので、Eclipseの変数としてM2_REPOを定義しておきます。値はローカルリポジトリへのパスを指定しておきます。



**プロジェクトの構成を出力する [#ka7ac4ca]
通常pom.xmlはデフォルト値は省略されますが、それを省略しないで出力します。
 mvn projecthelp:effective-pom
コンソールに
 <?xml version="1.0"?><project>
   <modelVersion>4.0.0</modelVersion>
   <groupId>nu.mine.kino.mavensample</groupId>
   <artifactId>kino-app</artifactId>
   <name>kino-app</name>
   <version>1.0-SNAPSHOT</version>
   <url>http://maven.apache.org</url>
   <build>
     <sourceDirectory>t:\workspace3.2\kino-app\src\main\java</sourceDirectory>
     <scriptSourceDirectory>src/main/scripts</scriptSourceDirectory>
     <testSourceDirectory>t:\workspace3.2\kino-app\src\test\java</testSourceDirectory>
     <outputDirectory>t:\workspace3.2\kino-app\target\classes</outputDirectory>
     <testOutputDirectory>t:\workspace3.2\kino-app\target\test-classes</testOutputDirectory>
     <resources>
       <resource>
         <directory>t:\workspace3.2\kino-app\src\main\resources</directory>
       </resource>
     </resources>
     <testResources>
       <testResource>
         <directory>t:\workspace3.2\kino-app\src\test\resources</directory>
       </testResource>
     </testResources>
     <directory>t:\workspace3.2\kino-app\target</directory>
     <finalName>kino-app-1.0-SNAPSHOT</finalName>
     <plugins>
       <plugin>
         <artifactId>maven-projecthelp-plugin</artifactId>
         <version>2.0-beta-1</version>
       </plugin>
     </plugins>
   </build>
   <repositories>
     <repository>
       <snapshots>
         <enabled>false</enabled>
       </snapshots>
       <id>central</id>
       <name>Maven Repository Switchboard</name>
       <url>http://repo1.maven.org/maven2</url>
     </repository>
   </repositories>
   <pluginRepositories>
     <pluginRepository>
       <releases>
         <updatePolicy>never</updatePolicy>
       </releases>
       <snapshots>
         <enabled>false</enabled>
       </snapshots>
       <id>central</id>
       <name>Maven Plugin Repository</name>
       <url>http://repo1.maven.org/maven2</url>
     </pluginRepository>
   </pluginRepositories>
   <dependencies>
     <dependency>
       <groupId>junit</groupId>
       <artifactId>junit</artifactId>
       <version>3.8.1</version>
       <scope>test</scope>
     </dependency>
   </dependencies>
   <reporting>
     <outputDirectory>target/site</outputDirectory>
   </reporting>
 </project>
が出力されました。ファイルにリダイレクトして、ちょこちょこ編集して使うことができて便利です。デフォルト値がでてるのがよいですね。



**依存するライブラリを追加する [#lf96b8c4]
Mavenは必要なライブラリがローカルにあるかを探し、なかったらネット上のリポジトリを探しに行きます。で必要なライブラリですが、pom.xmlで以下のように指定します。

  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>  dependencies内に複数かける
  </dependencies>

 <groupId />
 <artifactId />
 <version />
は必須みたいですね。




**サイトを作成する [#d4edf8f0]

**作成したサイトに、様々な情報を載せる [#a02f8db3]


**ソースをjarにする [#m37c1720]
 mvn package
でjarが作成されます。

**ローカルリポジトリにjarを配置する [#nbd0b05a]
 mvn install
で該当プロジェクトがローカルリポジトリ(~/.m2のことです)にインストールされます。複数のプロジェクトが依存しあってる構成で開発するときはローカルリポジトリに自分のライブラリをインストールすることで、再帰的(?)に開発すればよいのかな?つまり
 ProjectA
 ProjectB <- ProjectAに依存してる
場合、まずProjectAをinstallして、んでProjectBはpom.xmlでProjectAに依存してる、と書いておく、と。

-[[依存Jarをローカルリポジトリに追加する>http://72.14.235.104/search?q=cache:GPA3Hd7qYD8J:hpcgi2.nifty.com/wutse/wifky/wifky.cgi%3Fp%3D%255BMaven2%255D%25B0%25CD%25C2%25B8Jar%25A4%25F2%25A5%25ED%25A1%25BC%25A5%25AB%25A5%25EB%25A5%25EA%25A5%25DD%25A5%25B8%25A5%25C8%25A5%25EA%25A4%25CB%25C4%25C9%25B2%25C3%25A4%25B9%25A4%25EB+Maven2+%E4%BE%9D%E5%AD%98&hl=ja&ct=clnk&cd=3&gl=jp&lr=lang_ja]]

ちなみにインストールしたときのディレクトリ構成ですが
 groupId(の.を/で切ったモノ)/artifactId
となるのでgroupIdは適度な長さにしておいた方が良さそうです。EclipseのプラグインIDだと失敗するな(´д`;)↑もうやっちゃった(´д`;)

**Mavenのpom.xmlのスキーマ [#pff8c406]
-[[Maven Model>http://maven.apache.org/ref/2.0.4/maven-model/maven.html]]

**pom.xmlの説明 [#id206df3]
-[[pom.xml>http://www.limy.org/program/java/maven/project.html]]




----
この記事は
#vote(おもしろかった,そうでもない)

#comment
#topicpath


SIZE(10){現在のアクセス:&counter;}


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS