WebSphere Application ServerのMaven archetypes
Mavenプロジェクトのarchetypeに、WebSphere Application Server(Liberty、Traditional)用のものがあることを知ったので、メモします。このarchetypeを使うと、pom.xmlやプロジェクト・ファセットを設定してくれて便利です。
(備考)IBMのサポートはなし
Note: These archetypes are not supported by IBM®. This information is provided for reference only.
Eclipseで、webapp-jee7-libertyを使ってMavenプロジェクトを作ってみます。
環境
Eclipse Java EE IDE for Web Developers
Version: Mars.1 Release (4.5.1)
Mavenプロジェクト作成(webapp-jee7-liberty使用)
- File > New > Maven Project をクリック
- 「Create a simple project (skip archetype selection)」にチェックはつけずに、「Next」
「url」を入力し、「OK」クリック
url: http://central.maven.org/maven2/
Archetypesウィンドウで「OK」クリック
「Filter」でWASのものに絞り、「webapp-jee7-liberty」を選択し、「Next」クリック
Filter: net.wasdev.maven.tools.archetypes
ウィザードに従って、プロジェクトのGroup Id等のパラメータを設定して、完了
完成したMavenプロジェクトを見てみる
「url」を入力し、「OK」クリック
url: http://central.maven.org/maven2/
Archetypesウィンドウで「OK」クリック
「Filter」でWASのものに絞り、「webapp-jee7-liberty」を選択し、「Next」クリック
Filter: net.wasdev.maven.tools.archetypes
ウィザードに従って、プロジェクトのGroup Id等のパラメータを設定して、完了
こんな感じでできます。
pom.xmlを見ると、「liberty-target」というdependencyが設定されています。
これは、Libertyのクラスパスをエミュレートするもので、ライブラリーのMaven Dependenciesを見ると、WASのjarが入っているのがわかります。
liberty-target
This dependency aggregates all of the WebSphere Application Server Liberty API, SPI, recommended Java specification dependencies, and third-party implementation dependencies.
もし、WASのarchetypeを使ってMavenプロジェクトを使ってなかったら、後からpom.xmlにdependencyを入れてあげれば、パス通せます。
<dependency>
<groupId>net.wasdev.maven.tools.targets</groupId>
<artifactId>liberty-target</artifactId>
<version>RELEASE</version>
<type>pom</type>
<scope>provided</scope>
</dependency>
※versionのところは明示的に「8.5.5.9」などバージョン指定できる
プロジェクト・ファセットは、こんな感じで入ってます。
以上。
Author And Source
この問題について(WebSphere Application ServerのMaven archetypes), 我々は、より多くの情報をここで見つけました https://qiita.com/shimac/items/058ef99027953d4cdbec著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .