2011-08-12 15 views
1

私のために私のアプリケーションをデプロイするにはどうすればよいでしょうか。サーバーにデプロイするmaven

私は

mvn deply:devserver (or something like that)を入力し、それがリモートdevserverの/ var/libに/ tomcat6 /共有/会社フォルダに

を以下のもの

SCPすべての依存関係のjarファイルを実行する必要がありできるようにしたいですSCPのwarファイルをリモートのdevserver/var/lib/tomcat6/webappsフォルダにコピーする

私はすでにステートメント/質問を聞くことができますから "なぜこのようなことをしているのですか? "bラブラブラ私は答えます。このサーバーは35種類のwarファイル(このプロジェクトを継承しています)をすべて同じ依存関係を使って実行していますので、tomcatクラスローダーに同じ50またはそれ以上のライブラリを35回ロードするという点はありません。 idはむしろtomcatを起動時にロードしてwebappsと共有するようにしてください。

といいえ、マネージャはこのtomcatのインスタンスにインストールされていませんので、そこには行かないでください。セキュリティ管理者は、一般に公開されているサーバーに管理コンソールをインストールすることはできません。そのため、すべての展開はSCPファイルのコピーを経由する必要があります。

私はantで約5分でこれを行うことができました。私はシェルスクリプトを書くだけの可能性を排除していませんでしたが、まずmavenにチャンスを与えたいと思います。

答えて

1

コードの 'deploy'をサーバーにスクリプトする必要があります。 Antを使用することを選択した場合はそれを行いますが、Mavenはこの作業に適したツールではありません。

Maven 'deploy'ゴールは、ビルドされた成果物をリポジトリサーバーに展開して、他のプロジェクトが依存関係としてダウンロードできるようにするために使用します。あなたが考えているのは「デプロイ」ではありません。

Mavenで本当にこれを行う必要がある場合は、MavenでAntタスクを実行できるmaven antプラグインがあります。これをデプロイメントステップにバインドできます。私はビルドツールとしてMavenを使用するという慣習には非常に似ているので、これに反してアドバイスします。

+0

クール、ありがとうございます。私はそれを行うには、迅速なシェルスクリプトをノックアウトします。 – scphantm

+0

これを行うためのシェルスクリプトを書くことになりました – scphantm

+0

シェルスクリプトは良いですが、linux/unix上で実行することが絶対確実でない限り、クロスプラットフォームのスクリプト言語を考慮する必要があります。どのような環境からでも実行できるようにしたい場合は、Ant、python、またはscalaが私の好きな選択肢です。 –

関連する問題