1

Jetty 6では、WEB-INF/jetty-web.xmlこれを含むファイルを作成する必要があります。

<Configure id="webAppCtx" class="org.mortbay.jetty.webapp.WebAppContext">

WEB-INF/jetty-web.xmlしかし、Jetty 7では、これを含めるためにまったく同じファイルが必要です。

<Configure id="webAppCtx" class="org.eclipse.jetty.webapp.WebAppContext">

両方のファイルが異なります(org.mortbayvs org.eclipse)。Jetty6とJetty7の両方と互換性のある1つのwarファイルを作成するにはどうすればよいですか?

4

2 に答える 2

2

これを1つのファイルで実行できるかどうかはわかりませんが、ANTビルドスクリプトを使用して、2つのバージョン固有のWARを作成できます(すでにこれを実行している場合は悪いです)

ウォービルドを呼び出す前に、ANTにJetty6または7WEB-INF /jetty-web.xmlファイルをwarbasedirにコピーしてから、次のように呼び出します。

<target name="buildwar">
        <buildnumber />
    <war basedir="dist/web" destfile="${warName}-jetty${jettyVersion}.war"
     webxml="dist/WEB-INF/web.xml">         
        <webinf dir="dist/WEB-INF/">
            <include name="**/*.jar" />
        </webinf>
        <manifest>
            <attribute name="displayName" value="${warDisplayName} for Jetty ${jettyVersion}" />
            <attribute name="Implementation-Version" value="${build.number}" />            
        </manifest>         
    </war>
</target>
于 2011-12-22T07:34:57.713 に答える
0

貧乏人の解決策:突堤のために2つの戦争を構築します。

Mavenアセンブリスクリプトを使用して複数の戦争を構築することを考えてjetty-web.xmlいますが、ソース内の両方のバージョンのファイルを完全に複製する必要があります。

于 2011-12-22T08:36:12.810 に答える