2016-08-04 18 views
0

Glassfish 4をターゲットランタイムとして使用するmavenでj2eeプロジェクトを作成するにはどうすればよいですか?glassfishランタイムのMavenアーキタイプ

私はeclipse Marsを使用しています。私は 'Dynamic Web Project'ウィザードに従い、glassfish 4を 'Target runtime'として選択します。ウィザードが終了すると、プロジェクトを開き、ノードのJava resources-> Librariesの下にglassfishシステムライブラリバンドルが表示されます。

これで、mavenを使用して同じプロジェクトを作成しました。私はデプロイ時の問題を避けるために、同じライブラリバンドルを提供するアーキタイプを探しましたが、私は決定的なものを見つけませんでした。 もっと近いものはjersey-quickstart-webappのように見えますが、依存関係を見ると、これはグラスフィッシュランタイムのほんの一握りです。それが可能だ?私には奇妙に聞こえるかもしれませんが、私は間違いを犯しているかもしれませんが、正しいアプローチに従っていますか?

ありがとうございました。 mygroupmyappを決定するためにあなたです

mvn archetype:generate -DgroupId=mygroup -DartifactId=myapp -Dversion=1.0-SNAPSHOT 
     -DarchetypeGroupId=org.codehaus.mojo.archetypes -DarchetypeArtifactId=webapp-javaee7 

:私が思い付くことができ

答えて

0

最高は、このでした。ビルド要素(我々はすぐにそれを参照しようとしている)で、最終的な名前を設定

<glassfish.version>4.1.1</glassfish.version> 

そして、生成されたのpom.xmlに、(properties要素で)このプロパティを追加します。

<finalName>myapp</finalName> 

そして、プラグイン要素で、Glassfishの埋め込まれたランタイムを設定するには、このプラグインを追加します。

<plugin> 
    <groupId>org.glassfish.embedded</groupId> 
    <artifactId>maven-embedded-glassfish-plugin</artifactId> 
    <version>${glassfish.version}</version> 
    <configuration> 
     <autoDelete>true</autoDelete> 
     <ports> 
      <http-listener>8080</http-listener> 
      <https-listener>8181</https-listener> 
     </ports> 
    </configuration> 
    <executions> 
     <execution> 
      <id>deploy</id> 
      <goals> 
       <goal>deploy</goal> 
      </goals> 
      <phase>none</phase> 
      <configuration> 
       <app>target/${project.build.finalName}.war</app> 
       <contextRoot>/${project.build.finalName}</contextRoot> 
      </configuration> 
     </execution> 
     <execution> 
      <id>admin</id> 
      <goals> 
       <goal>admin</goal> 
      </goals> 
      <phase>none</phase> 
     </execution> 
    </executions> 
    <dependencies> 
     <dependency> 
      <groupId>org.glassfish.main.extras</groupId> 
      <artifactId>glassfish-embedded-all</artifactId> 
      <version>${glassfish.version}</version> 
     </dependency> 
    </dependencies> 
</plugin> 

次に、mvn clean install embedded-glassfish:runを使って新しく構築されたアプリケーションでサーバーを実行します。

あなたはそれが好きです。

+0

codehausがすべてのサービスを終了したため、私はcodehausからアーキタイプを破棄しました。しかし、あなたのコードは良い出発点です。私はそれを研究し、私のMaven知識を育てます。ありがとうございました。 – user3253833

関連する問題