• ベストアンサー

サーバサイドで動作するJavaアプリのデプロイ方法

サーバサイドでソケット通信を受信して処理を行うJavaのアプリを作成する場合、そのアプリのデプロイ方法として、一般的な方法はどのような方法となるのでしょうか? ちなみにこのアプリケーションでは、Tomcatなどのアプリケーションサーバやフレームワークは使用しません。 私のほうで調べてみた限りでは、 1.antなどを使ってプログラムをjarにまとめる。 2.サーバにscpなどでアップし、シェルなどでjavaコマンドを実行する。 といった感じになるのではと考えています。 よろしくお願いします。

  • Java
  • 回答数1
  • ありがとう数2

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

それでいいと思いますよ。 普通に Java SE を 動かそうと思うと、jar にして、java で実行するのがふつうだし、いろんな過程があったとしても、動くときには、結局そうなる。 Java Web Start とか Java FX は アプレットに対して適用される技術のようだ。 強いてデプロイプロセスを明文化する必要があるとするなら、jar を含む必要なファイルを zip か tar.gz にする、サーバーに圧縮ファイルをアップロードする、ファイルを展開する、設定ファイルを配置したり、必要なディレクトリを作るようなシェルを実行する、サーバーアプリを常駐させるシェルを実行する、のような手順を readme に書いておけば、UNIX のサーバーアプリっぽいですね。    

関連するQ&A

  • サーバーサイドJavaのデプロイについて

    「Spring MVCを利用したサーバーサイドJavaのプロジェクトデプロイについて」 私は社内SEとして、JSP/サーブレットで簡単なWebアプリケーションを作り、社内サーバから社員向けに公開しています。 今回初めてフレームワークを使おうと思い、Spring MVCを選択しました。 Spring Tool Suite(STS)をインストールし、サンプルプロジェクト「Hello World」を作成し、STSに組み込まれているサーバーソフト「VMware vFabric tc Server」を利用して、ローカル環境で"Hello World!"を表示させることに成功しました(http://kt-kiyoshi.com/wp/2014/02/17/spring-tool-suite/に書かれてあるのと同じ内容)。 このサンプルプロジェクト「Hello World」を、ローカルにあるTomcatにデプロイしようとしたのですが上手くいきません。 http://d.hatena.ne.jp/ozuma/20131227/1388151846とかhttp://fukuchiharuki.me/wiki/index.php?Tomcat%2FWAR%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%82%92%E9%85%8D%E7%BD%AE%E3%81%99%E3%82%8Bを見て試したのですが上手くいきません。 JSP/サーブレットで作ったWebアプリケーションはTomcatでちゃんと動いています。 STSで作ったプロジェクトは、フォルダ階層やらコンテキストやらが、いつものJSP/サーブレットのものより複雑なので、理解できていません。 (1)上記のように、STSで作ったプロジェクトをTomcatにデプロイする方法を詳しく教えて頂けませんか? (2)もしくは、「VMware vFabric tc Server」をインストール(サービスへの登録を含む)する方法を教えて頂けませんか?ただし、いずれ公開用のサーバーに置くつもりなので、サーバーにSTSをインストールして、サーバーの電源がOFF→ONの度に「VMware vFabric tc Server」を起動させるというのはなしにしたいです。OSを再起動してもサービスから自動的にスタートアップにしたいです。 よろしくお願い致します。 [環境] Windows 7 Tomcat 7 Spring Tool Suite 3.6.0 (Eclipse 4.4 Lunaがベース)

    • ベストアンサー
    • Java
  • アプリケーションサーバーについて

    Java初心者です。 基礎的な質問とは思いますが、よくわからないので教えてください。 javaアプリを作って、アプリケーションサーバにデプロイするのが 常と思いますが、OracleAS、tomcat、jbossなど数多くある アプリケーションサーバは各々の特徴はあるのでしょうか? 「こういうケースにはコレがいい」などの事例はあるのでしょうか? 解説を読んでも難しくてよくわかりません。 どなたか教えていただけると助かります。

    • ベストアンサー
    • Java
  • FreeBSDでサーバーサイドJavaの実行環境は存在しますか?

     初歩的な質問ですいません。 FreeBSD版のサーバーサイドJavaの実行環境(JVM)は存在しますか? SunのJava2EEと互換しているものです。 Sunとライセンス契約をした FreeBSD財団からリリースされている JDK1.3.1 JRE1.3.1 (↑これらがJava2SEなのかJava2EEなのかすら分かりません) は存在するようですが・・・ http://www.freebsd.org/ja/java/ Tomcatなどが動作する FreeBSD版のサーバーサイドJavaの実行環境(JVM)は存在しますか?  どなたか、よろしくお願いいたします。 関連Webサイトが英文ばかりで・・・(笑)

  • javaのコンパイルがうまくいきません。

    現在javaのFileUploadクラスを使用してファイルをサーバへアップロードするアプリケーションを作成しております。 コンパイルにはANTを使用しています。 動作環境: WindowsXP sp2 jdk1.5.0_10 tomcat5.5.23 Apache Ant 1.7.0 現象: 作成したjavaファイルをコンパイルしようとするとDiskFileUploadクラスとFileItemクラスまたHttpSessionクラスのシンボルを見つけられませんとなりコンパイルが通りません。 環境変数: JAVA_HOME = "c:\Program Files\java\jdk1.5.0_10" ANT_HOME = "C:\Program Files\Apache Software Foundation\apache-ant-1.7.0" CATALINA_HOME = "C:\Program Files\Apache Software Foundation\Tomcat 5.5" path = "%JAVA_HOME%\bin;C:\Program Files\Apache Software Foundation\apache-ant-1.7.0\bin" CLASSPATH = ".;%JAVA_HOME%\lib\tools.jar;%CATALINA_HOME%\common\lib\servlet-api.jar;%CATALINA_HOME%\common\lib\commons-fileupload-1.2.jar;%CATALINA_HOME%\common\lib\commons-io-1.3.2.jar" となります。 tomcatのcommon\libがうまく参照できていないからなのでしょうか? とすればそれはなぜなのでしょうか? ご教授いただければと思います。よろしくお願いいたします。

    • ベストアンサー
    • Java
  • レンタルサーバでJAVAを起動させられませんか?

    JAVAアプリケーションをサーバに置き、クライアント側のJAVAアプレットと通信させたいのですが、レンタルサーバにFTPでJAVAアプリケーションをアップしましたが、起動させられません。 レンタルサーバで提供されているSSHでサーバにログインしましたが、「>JAVA アプリケーション名」では「command not found」のようなことを言われてしまいます。 何か方法はないのでしょうか? よろしくお願いします。

  • LinuxのサーバサイドJavaをWindowsで開発できますか

    サーバサイド以外でのJavaアプリと、PHP,MySQLでのWebアプリ開発の 経験があります。 この度、いよいよサーバサイドJavaでWebアプリを開発することにな りました。 与えられた環境はWebサーバにLinux/Apache、 DBサーバにWindows2000Server/SQLServer2000です。 この際勉強の意味合いもあり、EJBも使用したいと思っておりまして、 LinuxサーバでサーブレットコンテナとEJBコンテナを稼動させたいと思 っています。 そこでお伺いしたいのが、このようなWebアプリをWindowsで開発できる かについてです。 普通、開発環境はWindowsでということが多いと思うのです。ネットや 書籍を参照しても、Windowsで間発環境を構築している例が殆どのよう な気がします。 私も、普段開発で使用しているWindowsXPマシンで、 JBoss+Eclipse+Strutsの環境を構築し、開発したいと思っています。 きっとLinuxにも同じようにJbossをインストールということになるのだ と思うのですが、それにしても、開発環境=Windows、本番環境=Linux、 ということになり、開発と本番の環境が全く違うことになってしまうと 思うのです。 Javaはプラットフォームフリーなので気にしない、ということなのか、 そんなことない気がします。 サーバサイドに関しては初心者でして、根本的に的外れなことを言って しまっているかもしれません。 出だしから基本的なところで躓いてしまっていまして、何卒アドバイス をお願いいたします。

  • Linux+Apache+Tomcat3.2.1 で非常に困ってます・・

    はじめまして Servlet初心者です LinuxにApache1.3.14とTomcat3.2.1を入れ、exampleを実行しようとしたところ、 port:8007(Ajp12)からだと   HANDLER THREAD PROBLEM: java.io.IOException: Stream broken port:8009(Ajp13)からだと   ArrayIndexOutOfBoundsException になってしまいます・・ なにが悪いのか? どうすればまともに動くのか? etc.. 教えてください! どうかよろしくお願いいたします・・ ちなみにその他の環境や条件は Redhat Linux 7 / JDK1.3.0 / JSSE1.0.2 / ServletAPI3.2 .. TOMCAT並びにServletAPIはAnt-1.3でコンパイルしました CLATHPATHは TOMCAT起動時にセットされるもの(servlet.jar etc.)の他には $JAVA_HOME/bin、antのjaxp.jar と parser.jar、JSSEの3つのjarファイルくらいです。

  • JavaアプレットはWebブラウザ上で動作し、Javaサーブレットはサ

    JavaアプレットはWebブラウザ上で動作し、Javaサーブレットはサーバー上で動き、Javaアプリケーションは単独で動作するということは理解しました。 以上の3つには機能的な違いがありますか? JavaアプリケーションにはあってJavaアプレットには無いもの、Javaサーブレットにあって、Javaアプレットには無いもの、JavaサーブレットにあってJavaアプリケーションには無いものなど、もっと詳しく知りたいです。参考の本などもお待ちしています。皆さんの知恵をお貸しください。よろしくおねがいします。

    • ベストアンサー
    • Java
  • Javaアプリケーションサーバ、何を使ってますか?

    私は某SIerで勤務してるんですけど Javaのアプリケーションサーバって、皆さん(の会社)では何を採用していますか? 多くは商用のアプリケーションサーバ、IBMのWebSphereとかBEAのWebLogicとかかと思います。 でも、Tomcatもセッションクラスタに対応してからはかなり魅力的ですよねー。 JBossはまあTomcatとの組み合わせで採用されてたりするんでしょうか。 あっ、Oracleも出してたり、Macromedia(今はAdobeかな)も出してますよね。 自分はまだ業務用としてTomcatを採用した現場は見たことがないんですが、日本の世間一般として現在の状況はどうなんだろうかと思い質問してみました。 そのアプリケーションサーバを選択した理由なんかもできれば一緒に教えて頂けると助かります。 ちなみに、自分が新規案件でアプリケーションサーバの選定するときは、WebSphereかWebLogicを第一候補として考えることが多いです。お客さんがIBMよりならWebSphereって感じでしょうか。 Tomcatは・・・、よっぽどコストを気にされるお客さんの場合、提案はしてみますが最終的に採用されずってパターンが多いです。 ちなみに開発フェーズではもっぱらTomcatです(^_^)

  • Javaサーバアプリケーションのメモリ節約

    Javaでサーバアプリを作成しました。 そのサーバアプリはクライアントがサーバに 接続して、ちゃっとや対戦ゲームができるプログラムです。 プログラムは2000行程度あるので、 サンプルとして、以下のようなプログラムだと 考えていただければと思います。 http://www.techscore.com/tech/Java/Network/3.html 起動すると、以下のようなメモリ使用量になります。 起動した直後なため、ソケットがクライアントの接続を待っている状態です。 クライアントが接続すると、%MEMも以下の値よりも徐々に増えていきます。 # ps -eo "pid,ppid,%mem,cmd" PID PPID %MEM CMD 18816 1 4.1 java server -server 18817 18816 4.1 java server -server 18818 -18825 18817 4.1 java server -server 18816が親プロセス、18817-18825が子プロセス 合計で10プロセスがあるわけです。 ということはメモリ使用率は4.1*10=41%も使っているのでしょうか? それとも親子合わせて、4.1%の使用率なのでしょうか? JavaはCに比べてメモリ使用量が大きいとは聞いたことありますが、節約する方法は何かないのでしょうか? また、子プロセスが9つもあがるのが無駄なような気がします。 子プロセスの数を制御する方法はないのでしょうか? どこかのホームページの紹介でも、結構なので、 ご教授いただければ幸いです。

    • ベストアンサー
    • Java

専門家に質問してみよう