2009-07-06 8 views
2

私はかなりmavenに新しいです。maven javaeeアプリケーションクライアントプラグイン

アプリケーションクライアントのjarファイルを作成するのに適したプラグインまたはパッケージタイプはありますか?

jar内のMETA-INFフォルダにapplication-client.xmlファイルを追加します。

通常のjarパッケージにはファイルが含まれていません。

+0

ためguide to working with manifestsをチェックしてくださいここでは、次のとおりです。http://maven.apache.org/plugins/maven-acr-plugin/ http://maven.apache.org/plugins /maven-ear-plugin/examples/using-app-client.html – Pablo

答えて

1

(と、それはデフォルトであるとして、あなたはそれを宣言する必要はありません):このページをチェックしてください。 application-client.xmlをsrc/main/resources/META-INFフォルダに定義すると、最終的なjarのMETA-INFフォルダに含まれます。


追加情報を定義するには、以下のようにjarプラグインを設定する必要があります。

<project> 
... 
    <build> 
    <plugins> 
     <plugin> 
     <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-jar-plugin</artifactId> 
     <version>2.2</version> 
     <configuration> 
      <archive> 
      <manifest> 
       <mainClass>com.mycompany.app.App</mainClass> 
       <addClasspath>true</addClasspath> 
      </manifest> 
      <manifestFile>src/main/resources/META-INF/MANIFEST.MF</manifestFile> 
      </archive> 
     </configuration> 
     </plugin> 
    </plugins> 
    </build> 
    ... 
</project> 

詳細

+0

それはうまく動作します。メインクラスとクラスパスの情報をメンテナスに追加する方法は? – rangalo

0

私はMavenのJavaEEサポートに詳しくはありませんが、ejbプラグインは正しく設定されていればクライアントjarも生成できるようです。あなたが唯一のjarパッケージでプロジェクトを定義する必要があるの

Maven EJB Plugin - Generating an EJB client

+0

ありがとうございました。私はそれを試しましたが、うまくいかないようです。 application-client.xmlは含まれていません。私はパッケージを変更する必要がありますか? – rangalo

+0

これは、クライアントアプリケーションに含めるためのクライアントクラス(例:EJBインタフェース)を使用して2番目の成果物を作成するだけです。これらのクライアントアプリケーションは、WARモジュールまたは他のアプリケーションクライアントである可能性があります。 2番目の成果物には「クラス」分類器があります。 –

+0

OPはJava EE Application Client«と言います。つまり、デプロイ時にコンテナによって実行されるmain()を持つEJBです。そうでなければ、クライアントの二重の使用は混乱しています。 – Martin

関連する問題