Java実行環境について

このQ&Aのポイント
  • Javaの実行環境について質問があります。サーブレットエンジンはOSを選ぶのでしょうか?
  • Javaアプレットなどでも、サーブレットエンジンに変わるソフトが動いているのでしょうか?
  • Java以外の「実行環境を選ぶ」プログラムでも実行プログラムを実行するソフトは必要ですか?
回答を見る
  • ベストアンサー

Java実行環境について

非常に基本的な質問で恐縮なのですが。。。 ・Javaは実行環境(OS)を選ばない。 ・Javaサーブレットを実行するにサーブレットエンジンと呼ばれるソフトが必要 そこでふと思ったのですが、 1. サーブレットエンジンはOSを選ぶのでしょうか?OSの差をサーブレットエンジンが埋めるためJavaサーブレットは結果的に実行環境を選ばないということになるけれど、その代わりサーブレットエンジンなしでは実行できないということになるのでしょうか? 2. では、Javaアプレットなどでも、サーブレットエンジンに変わるソフトが動いているのでしょうか? 3. C言語などJava以外の「実行環境を選ぶ」プログラムであっても、実行プログラムを実行するソフトというものがあり、プログラム実行時には稼動しているのでしょうか? 4. これらのような、基礎中の基礎というのはどのような本をさんこうにすればよいのでしょうか。もしくはネット検索においてどのようなキーワードをつかえばよいのでしょうか。どれも、主に色々なHP を見ての推測でありこれらをまとめて述べてくれるページを見つけることができませんでした。 どれか一項目でも良いのでぜひご意見、ご回答をお願いします。

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

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

  • ベストアンサー
  • misoka
  • ベストアンサー率35% (56/160)
回答No.2

> サーブレットエンジンにはUNIX用とか、Windows用といったものがあるのか否か? 私の方が誤解していたようで、失礼しました。 サーブレットエンジン、たとえばTomcatには、いちおうUNIX用、 Windows用というのが、あるといえばありますが、基本的には ないと言ってしまっていいと思います。 では、OSの差はどこで埋められているのか、というと、 基本的に差を埋めているのは、JavaVMです。 つまり、サーブレットエンジンそのものが、JavaVMの上で稼動する Javaのソフトである、という図式になっているわけですね。

takenoaki
質問者

お礼

なるほど!ありがとうございました。 やっと、Javaの実行環境がわかりました(^^ 2回ともすばやい回答で丁寧に答えていただけてとてもうれしかったです。 むしろ、いつも私のほうが確認するのが遅くて申し訳ありませんでした(^^;

その他の回答 (1)

  • misoka
  • ベストアンサー率35% (56/160)
回答No.1

1. サーブレットエンジン(サーブレットコンテナ)としては、Tomcatというのが有名ですが、 これは、WindowsでもUNIXでも動作します。Mac OS Xでも動作するようです。 しかし、当然Javaが動かないOSでは動作しません。 > OSの差をサーブレットエンジンが埋めるためJavaサーブレットは結果的に実行環境を > 選ばないということになるけれど、その代わりサーブレットエンジンなしでは > 実行できないということになるのでしょうか? サーブレットは、サーブレットエンジンがない環境では実行できません。 ただ、誤解してらっしゃるかもしれないので付記しますが、サーブレットというのは、Web サーバと連携して、Webコンテンツを動的に生成する仕組みのことをさします。 つまり、サーブレットはサーバ側で実行され、実行された結果がWebコンテンツとして クライアントに送信されます。 そのため、クライアントにはサーブレットの環境はもちろん、Javaの環境も必要ありません。 2. サーブレットエンジンに代わるもの、かどうかは、よく分かりませんが、 アプレットを動作するには、アプレットビューアーのようなソフトウェアが必要になります。 ブラウザで動作できるのは、ブラウザに、それ相応の仕組みがあるからです。 もちろん、JavaVM(Java仮想マシーン)は必須です。 3. 稼動していません(原則的には)。 もちろん、OSが必須ではある場合は多いでしょうけれど、ちょっと意味合いが違いますね。

takenoaki
質問者

補足

回答ありがとうございます。 私の言葉が足りなかったようなので、勝手に補足させていただきます。 質問1の項目について。 サーブレットエンジンがOSを選ぶというのは、 サーブレットエンジンにはUNIX用とか、Windows用といったものがあるのか否か? という質問を主旨としたかったのです。 そして、その回答が「否」である場合、OSの差は一体どこで埋められるのか? ということなのですが。。。 もし、この補足に気づいて頂いたときお時間があれば、お答えいただけると嬉しいです。

関連するQ&A

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

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

    • ベストアンサー
    • Java
  • JAVA2 Platform Standardって何者?

    当方JAVAは全然詳しくないのですが、最近ネット上のフリーソフトで「JAVA2 Platform Standardをインストールしてください」といったものを見かけるようになりました。 Windowsの場合、オンラインソフトといえば、VC、VB、Delphiといった言語で開発されているものと決めつけていました。JAVAといえば「ネットワークプログラミング言語」という認識だったのですが、この「JAVA2 Platform Standard」というのは.NET Frameworksみたいなものでしょうか? つまりこれをインストールした環境でなら、OSの違いを超えてJAVAアプリケーションが実行できるということですか? また「JAVAアプレット」という用語も昔から耳にするのですが、これはネットワーク上のプログラムを区別して「アプレット」と呼んで、ローカル上のプログラム「アプリケーション」と言い分けてるのでしょうか? どうも自分の認識に自信がないのですが……詳しい方、ぜひうんちくを聞かせてください。

    • ベストアンサー
    • Java
  • 学校でJAVAを習ったらサイトは作れますか?

    下記のような事を習います。これだけできればプログラム未経験者でも自分一人で大抵のことはできますか? [プログラミング実習] Java言語、JSPサーブレット など Java言語によるネットワークプログラミング技術の習得 座学型訓練 Javaによるシステム開発、データベース設計補佐など ネットワーク技術について、ハード・ソフト両面において、技術・知識を身に付ける。ITを活用したビジネ スプロセスモデルに対して、最適なシステム構築を計画、実行することが出来る。 ・Javaを使用して、アプリケーションソフト・アプレット・サーブレットが作成出来ます。 ・Javaサーブレット・JSP・Beansを使った、Webサイトの作成・運用・管理が出来ます。 ・データーベースの作成及び運用・管理が出来ます。

    • ベストアンサー
    • Java
  • JAVAのいろいろ

    こんばんわ。 サーバサイドのサーブレットとJSP、 クライアントサイドのJAVAアプレットとJAVAスクリプト、 JAVA初心者で、これからプログラムを勉強してシステム構築していきたいのですが、どの組み合わせが一番容易でわかりやすいでしょうか? 作成したいシステムは以下のMr.camのようなライブカメラです。 <http://www.tvdo.net/>

    • ベストアンサー
    • Java
  • JAVA実行環境が見つからない?

    WindowsXP上で、FreeMindというマインドマップを作成するフリーソフトをインストールしたところ、 FreeMind requires version Java 1.4.0 or higher (your version:1.3.1_01, installed in C:\Program Files\Oracle\jre\1.3.1). というメッセージが表示されて、起動できませんでした。 そこで、ネット上から最新のJRE SE v1.4.2_19をインストールしたのですが、状況は変わりませんでした。 プログラムの追加と削除のインストール済みソフトのリストを見たところ、JAVA関係のRuntimeモジュールが J2SE Runtime Environment 5.0 Update 10 J2SE Runtime Environment 5.0 Update 11 J2SE Runtime Environment 5.0 Update 6 J2SE Runtime Environment 5.0 Update 9 Java 2 Runtime Environment, SE v1.4.2_03 Java 2 Runtime Environment, SE v1.4.2_19 Java(TM) 6 Update 2 Java(TM) 6 Update 3 Java(TM) 6 Update 5 Java(TM) 6 Update 7 Java(TM) SE Runtime Environment 6 Update1 と多数表示されていました。 まず、インストールするJava実行環境を間違えていますでしょうか? また、なぜJavaの実行環境は、こんなにたくさんインストールされているのでしょうか?(同名の古いUpdateを削除しても問題ないでしょうか?) どなたかご教示願えますでしょうか?

  • JAVAアプレットの仕組みについて

    HTMLに埋め込まれたJAVAアプレットが画像を表示するように記述されている場合、JAVAアプレットは画像をサーバーからダウンロードして表示しているんですよね? JAVAアプレットがサーバーからファイルをダウンロードできるように、 JAVAアプレットがサーバー上にファイルを作り出すこともできるのですか? 今、計算プログラムをダウンロードで配布して、実行して得られた計算結果を投稿してもらう仕組みを作っているのですが、 JAVAアプレットにサーバー上のファイルを操作する能力があるのなら、JAVAアプレットを読み込み実行するだけで配布と投稿の作業が一まとめにできてしまうと思いました。 JAVAアプレットはサーバー上のファイルをどこまで操作できるのでしょうか?

    • ベストアンサー
    • Java
  • JAVAの実行ができません

    駄文で申し訳ありません。 シリアル通信を行うプログラムを実行したいのですが、コンパイルはできるのですが、実行すると下記のエラーがでます。プログラムはC:\commapi\samples\SerialDemo内にあり、環境変数もきちんと設定しているつもりなんですが、実行ができません。 なぜでしょうか?JAVAに詳しい方ご教授下さい。 C:\commapi\samples\SerialDemo>java SerialDemo Exception in thread "main" java.lang.NoClassDefFoundError: javax/comm/CommPortId entifier at SerialDemo$ConfigurationPanel.listPortChoices(SerialDemo.java:560) at SerialDemo$ConfigurationPanel.<init>(SerialDemo.java:448) at SerialDemo.<init>(SerialDemo.java:142) at SerialDemo.main(SerialDemo.java:89)

    • ベストアンサー
    • Java
  • javaの実行環境

    javaの勉強をしようと思い、以下のhelloworldコードを書いてみました。 public class HelloWorld { public static void main(String[] args) { System.out.print("Hello World\n"); } } それを、以下のようにlinux環境(ubuntu 10.10)でコンパイル実行しようとしたのですが、 javac HelloWorld.java java HelloWorld.class Exception in thread "main" java.lang.NoClassDefFoundError: ・・・ と怒られてしまいました。そこで色々調べて jar cvmf manifest.mf test HelloWorld.class とjarファイルを作成して実行したところ、適切に"Hello World"が表示されました。 (manifest.mfの中身は"Main-Class: HelloWorld"1行だけです。) その後、このjarファイルをwindows環境に持っていって実行したのですが、 Exception in thread "main" java.lang.NoClassDefFoundError: ・・・ と怒られてしまいました。 linux環境で、"echo $CLASSPATH"を実行しても何も表示されず、CLASSPATHはどこにも通っていないようです。 また、windows環境のDOS画面にてSETを実行し、環境変数を表示させてもCLASSPATHはありませんでした。(javaはインストール済みです。) で、質問です。 1)なぜjarにすると実行でき、classファイルのままでは実行出来なかったのでしょうか? 2)windows環境で、CLASSPATHを設定したほうが良いのでしょうか?設定する場合は、prgramfiles\java\binで良いのでしょうか? 以上、長くなり申し訳ないのですが、よろしくお願いします。

    • ベストアンサー
    • Java
  • javaアプリケーションをHTML上から実行する

    JAVAアプレットの場合は、HTML上で実行するときに 目的のクラスファイルを<applet>タグで囲んで実行しますが、 これがJavaアプリケーションの場合、HTML上から Javaアプリケーションを実行することは可能なのでしょうか? また可能な場合は、どのようにしてJavaアプリケーションを 実行すればよろしいのでしょうか?

    • ベストアンサー
    • Java
  • JAVAアプレットとIIS6.0について

    おせわになります。 JAVAアプレット初心者です。 現在、JAVAアプレットにて、テキストファイルを読込むプログラムを作成しており、このプログラムをIIS5.0上で実行すると正常に動作するのですが、それをIIS6.0上で実行すると、正常に動作せず、JAVAアプレット実行中に停止してしまいます。 アプレットビュアーで見たところ、最後にInputStreamReader()関数で引っかかってしまっている様なのですが、IIS6.0の場合なにか特別な設定が必要なのでしょうか? ご存知の方がいらっしゃいましたら、お助け下さい。 宜しく御願い致します。

    • ベストアンサー
    • Java

専門家に質問してみよう