3

1 つ以上のスキニー WAR を含める必要がある EAR プロジェクトがあります。そのプロジェクトをEclipseで動作させるためにすでにすべてを試しましたが、コマンドラインから実行したときにツール(mavenおよびgradle)と同じようにEclipseを実行することはできませんでした。

プロジェクトをEclipseで動作させるために使用できる実用的な例はありませんか? 助けてください。このような種類のプロジェクトで、私が望むようにこれらのツールを実際に使用している人がいるかどうか、私はすでに自問しています。

4

2 に答える 2

2

私の最後のプロジェクト経験では、Eclipse で Maven をサポートすることに問題があります。Eclipse m2 プラグインの問題のため。

したがって、私にとって最良の解決策は、たとえばいくつかのシェル スクリプトを使用して、コマンド ラインから ear を作成することでした。IDE でプロジェクトを開くために、 maven eclipse プラグインを使用したため、mavenで eclipse ワークスペースを生成しました。

Eclipse 外部ツールを使用すると、シェル スクリプトを実行してコマンド ラインから EE アプリケーションをビルド/実行することができ、非常に便利です。

同じことがgradleにも当てはまりますが、Eclipse Gradleプラグインの方が安定しているように見え、現在はGradleプロジェクトでプラグインを使用しています。

役立つ場合は、github テスト プロジェクトを確認して、maven multimodule war プロジェクトの作成方法を説明してください。また、このプロジェクトの Eclipse ワークスペースを生成する方法についての簡単な説明もあります。ワークスペースが生成されたら、既存のプロジェクトとしてワークスペースにインポートできます。

于 2013-03-03T14:45:55.593 に答える
0

これは戦争を含むEarプロジェクトのサンプルです(ディレクトリ構造については以下のimgを参照してください)

MainDirには、warという名前の2つのファイルと1つのディレクトリが含まれています

ファイルsettings.gradleには

include 'war'

ファイルbuild.gradleには

apply plugin: 'ear'

repositories {
    mavenCentral()
}

dependencies {
    deploy project(':war')
    //earlib group: YOUR_DEPENDENCIES
}

戦争ディレクトリのbuild.gradleには

apply plugin: 'war'
apply plugin: 'jetty' // you can call gradle jRW

repositories {
    mavenCentral()
}

dependencies {
    //compile group: YOUR_DEPENDENCIES
}

httpPort = 8080 //jetty start port
stopPort = 8081 //jetty stop port

ファイルHelloWorld.javaには

public class HelloWorld {
    public String getHello() {
        return "Hello world!";
    }
}

ファイルindex.jspには

<jsp:useBean id="helloWorld" class="your_package.HelloWorld"/>
<html>
<p>${helloWorld.hello}</p>
</html>

次に、cmd-> MainDirを開き(またはeclipse-marketplaceでgradleを検索し、eclipseから直接このステップを実行できます)、次のように入力します

gradle jRW//short for jettyRunWar

開催中

localhost:8080/war/

プロジェクト構造

于 2013-03-08T21:51:46.530 に答える