0

私の質問は以下と同じです。

(重要な場合は、Jbossバージョン5.0。)

Webアプリケーションの1つにライブラリがあり、使用する前にマシン固有のライセンスで構成する必要があります。このライブラリをshared/libに入れたくないのは、ある時点で、ライブラリのバージョンが異なる複数のWebアプリケーションを実行したい場合があるためです。

現在、.jarファイルはWEB-INF/libに保存されています。したがって、.warファイルをビルドしてサーバーにアップロードしても、.jarファイルは引き続きPCにバインドされたファイルになります。.warファイルをデプロイするときにTomcatが自動的に実行するbashスクリプトをWebアプリケーションのどこかに配置したいと思います。このスクリプトは、構成スクリプトを実行し、サーバーのライセンスファイルを.jarにバインドします。これは可能ですか?私がやりたいことをするためのより良い方法はありますか?


1つ違います。私のjarファイルは他のプロセスIDで実行する必要があります。つまり、jbossで区切られたスタンドアロンとして実行する必要があります。これでも

        String command = "cmd /C java -jar C:\\test\\WEB-INF\\lib\\teststart.jar";
        oProcess = new ProcessBuilder(command).start();

動作します、私は幸せになります。そのjarは実行可能なjarです。

何か考えはありますか?ありがとう..

4

1 に答える 1

0

ServletContextListenerのようなものはどうですか?

これを実装するクラスを作成し、contextInitializedメソッド(contextInitializedは戦争展開中に実行されます)でProcessBuilderを作成してbashコマンドを実行します。

于 2012-12-27T16:14:12.160 に答える