17

/usr/local/jboss-4.3/ の下の Ubuntu で JBoss 4.3 を実行しています。アプリケーションを WAR ファイル、つまり myapp.war として /usr/local/jboss-4.3/server/myserver/deploy にデプロイしました。しかし、デプロイ フォルダーの下に「展開された」/myapp ディレクトリがないようです。

私は Windows で実行されている Tomcat に慣れているため、JBoss には少し慣れていません。WAR を Tomcat に配布すると、この WAR の物理的な内容が /myapp ディレクトリに展開されます。これにより、構成設定など、Web アプリの下のファイルを変更することが可能になります。

JBossでこれを行うにはどうすればよいですか?

4

6 に答える 6

16

.war の内容を "myapp.war" フォルダに解凍できます。JBoss は、デプロイされたアプリケーションを圧縮された war であるかのように見なします。

さらに良いことに、ほとんどの IDE (確かに Eclipse ですが、Netbeans などの他の IDE だと思います) では、圧縮された .war の代わりに展開されたパッケージをデプロイできるため、.war パッケージ全体ではなく、変更する単一のファイルだけを変更できます。

于 2009-01-28T16:08:27.403 に答える
3

このリンクは役に立ちます:

http://community.jboss.org/wiki/DeployTipsAndBuildSampleScripts

記事の内容の簡単な要約: JBoss でのアプリケーションのビルド/デプロイに関しては、実行可能なアプローチが多数あります。この wiki では、いくつかのビルド/デプロイのシナリオと、手順および関連するビルド スクリプトのサンプルを紹介しています。次のアプローチがカバーされています。

  • JBossIDE を使用したポイント/クリック デプロイメント - ANT ビルド スクリプトが苦手なユーザー向け

  • 展開された EAR、JAR、SAR、WAR デプロイメント (オプション 1) - ANT コピー タスクを排除することで、開発の生産性を最大化します

  • 展開された EAR、JAR、SAR、WAR デプロイメント (オプション 2) - IDE をコンパイル、ビルド、およびデプロイ プロセスから分離

  • 通常の EAR、JAR、SAR、WAR デプロイメント - 圧縮されたアーカイブをデプロイします (クラスタリング/ファーム デプロイメントを使用する場合に必要です)

于 2011-11-24T14:20:55.657 に答える
1

Eclipse からファイルとしてエクスポートし、それを (UAT または Prod) JBOSS Server 7.1.1 最終 AS 展開ディレクトリにコピーすると、同じ問題が発生し、.warWindows JBOSS サービス .war ファイルが正常.warに展開されましたが、ファイルは展開フォルダーに展開または展開されませんでした。

このソリューションの場合、example.war 展開フォルダー (フォルダーの名前) を展開フォルダーにコピーしてから開始します。また、standalon.xml で auto-deploye-exploded=true に言及しています

于 2013-05-08T10:27:38.643 に答える
0

これはtmpフォルダーで行います......

ただし、「app.war」という名前を付けるだけで、展開ディレクトリのファイルを展開できます

于 2009-01-28T12:20:02.967 に答える
0

JBoss 7 でもまったく同じ問題がありました。私の ant スクリプトは.warファイルを JBossデプロイメントフォルダー (私のシステムではjboss-as-7.1.1.Final/standalone/deployments ) にコピーしましたが、 .warは爆発しませんでした。 . .warは管理 CLI を介して完全にデプロイ可能であったため、満足できない依存関係などではありませんでした。次のように、Ant war タスクに war を圧縮しないように指示した (プロパティcompressfalseに設定する) と、これは解決されました。

...
<target name="war" depends="build">
  <mkdir dir="${build.dir}"/>
  <war
    compress="false"
    needxmlfile="false"
    basedir="${webroot.dir}"
    warfile="${build.dir}/${project.distname}.war">
    <exclude name="WEB-INF/${build.dir}/**"/>
    <exclude name="WEB-INF/src/**"/>
   </war>
</target>
于 2012-06-19T15:28:29.890 に答える