- - PR -
TomcatプラグインでJSPの表示について
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2005-08-02 21:05
「クラスパス(変数)」について混乱されているのでは?
JVMはクラスを実行するたびに、その名前のクラスを求めて ファイルシステム全体を検索するわけではありません。 (作りかけのクラスを勝手に実行されたりしたら困っちゃいますよね。) どこを探すか?というのを「CATALINA_HOME」に設定しておくと、 Tomcatは始動時に「CATALINA_HOME」に設定された値を読み込んで、 後はそこだけを毎回探しに行くわけです。 もし、未記入さんの実行したいクラスがC:\develop\eclipse\workspaceにあれば、 ここを設定しない限り動きません。 # もし分かりきってる話だったらごめんなさい。 | ||||
|
投稿日時: 2005-08-02 21:41
返信ありがとうございます。
私は、CATALINA_HOMEは、tomcatのおいてある場所を示すものだと、 ずっと思っていました。 なぜかというと、 tomcatを動かすのだから、それをコンピュータに分からせる為に このように記述するのだと・・・ ホームページを見ると、展開したフォルダと書いてあるので、 なおさらその考えがあっているものだと思いました。 しかし、間違っていたようです・・・ taroさんの返信だとやはり C:\develop\eclipse\workspace にtomcatプロジェクトを作成したなら、 やはりC:\develop\eclipse\workspaceにCATALINA_HOMEを設定しないと いけないと言う事なのですね? そしたらホームページ(http://www.thinkit.co.jp/free/tech/3/5/1.html)に書いてあるようなtomcatを展開した所にCATALINA_HOMEを指定するというのは(インストールの箇所)間違っているという事なのでしょうか? またアドバイス頂けたら光栄です。 後、tomcat始動時にCATALINA_HOMEの値を読み込むと教えていただいたのですが、 例えば、JAVA_HOMEだったらjavaを実行した時に値を読み込むのですか? CATALINA_HOMEの記述が書かれたプログラム?などは何処かに探したらあるのですか? 何処でCATALINA_HOMEを見に行く設定がされているのでしょうか? 質問ばかりですが、 宜しければ教えてください。 よろしくお願いします。 | ||||
|
投稿日時: 2005-08-02 22:25
Tomcatそのものと、EclipseのTomcatプラグインは切り離して考えたほうが良いです。
プラグインは便利ですが、裏の仕組みを隠してしまうので、基礎ができていないと動作の仕組みが理解できません。 Tomcatの動作の仕組みや、パスの指定の意味がわからないのであれば、 Tomcatプラグインはいったんやめて、Tomcat単体で使用することをお奨めします。 そうすれば嫌でもわかります。 そもそもTomcatを単体で使用したことがありますか? 一度、CATALINA_HOME/binの下を見てください。 startup.batやcatalina.batと言うバッチファイルがありますよね? これらはTomcat起動スクリプトですが、この中をみればCATALINA_HOMEや JAVA_HOMEがどう使われているかわかります。 | ||||
|
投稿日時: 2005-08-02 23:51
返信ありがとうございます。
書き方が悪くて、誤解を与えてしまい、スミマセン。 「CATALINA_HOME/binの下を見てください。」 という言葉があるのですが、 もちろん、 その下に、startup.batやcatalina.batがあれば私も悩みません。 ずっと書いてきているように、 tomcatプロジェクトにCATALINA_HOMEを通したら動いたのです。 YOU@ITさんは、私が、tomcatの方にCATALINA_HOMEを通したと思っているかもしれませんが、何度も書かしていただいた通り、tomcatプロジェクトに通したのです。 tomcatプロジェクトは、「http://muimi.com/j/eclipse/eclipse03.html」に書いてある あの新規作成で作成を行うものです。 なので、意味が分からない状態になり、 CATALINA_HOMEは何がこれを読み、いつ動かし、どういう役割をしているのか?の ハッキリした答えが欲しくなったのです。 書き方が悪くて、意味を捉えにくいものになっているかもしれませんが、よろしくお願いします。 | ||||
|
投稿日時: 2005-08-03 11:28
たぶん、Tomcat Pluginの設定が正しく行われていないのだと思います。
使っているのはtomcat4.xか5.xだと思うのですがtomcat pluginの設定画面でインストールしたtomcatにバージョンをあわせてあるでしょうか? また、使用しているJREをeclipseインストールのままの「Program files」以下のものでなく、JDK以下にあるJREを使用するように変更はしてあるでしょうか? 一番最初の投稿での問題はこのJREの再設定をすることが必要だとtomcat pluginのドキュメントの中に書いて有りますよ | ||||
|
投稿日時: 2005-08-03 13:52
これは、Tomcat単体か、Tomcatプラグインを使うかで異なってくると思います。 Tomcat単体であれば、 何がこれを読み、 Tomcatの起動スクリプト(catalina.bat等)です。 いつ動かし、 Tomcatの起動スクリプト実行時です。 どういう役割をしているのか? Tomcatも単なるJavaアプリケーションですので、Tomcatを構成するクラス郡を ロードする為のクラスパスをJVMに教えてやる必要があります。 そのクラスパスの基点となる場所を定義する役割です。 Tomcatプラグインであれば、 ...そのプラグインを私は使っていないのでよくわかりません。 いずれにせよ、本来CATALINA_HOMEというのは、未記入(スレ主)さんが 調査されたように、Tomcatがインストールされた場所を示すものだと思います。 今回、workspaceに設定しなければならなかったのは、Tomcatプラグインの仕様か、 未記入(スレ主)さんの環境の問題だと思います。 修正:Eclipseのクラスパス変数と、環境変数は関係ないですね、すみません。 [ メッセージ編集済み 編集者: YOU@IT 編集日時 2005-08-03 14:30 ] | ||||
|
投稿日時: 2005-08-03 18:44
基本的にCATALINA_HOMEはTomcatインストールディレクトリを指定し、
他の任意のディレクトリにパスを通して動かしたい場合は、server.xmlで例えば <Context path="/Debug" reloadable="true" docBase="C:\eclipse\workspace\debug" workDir="C:\eclipse\workspace\debug\work" /> というように指定してあげれば動きます。 #Tomcat Plug-inが正しく入っていれば、Eclipseで勝手に書いてくれる。 Tomcatの設定ファイルを$CATALINA_HOMEでgrepすれば 何のために使用しているか判ると思います。 | ||||
|
投稿日時: 2005-08-06 21:32
tarnwoさんありがとうございました。
server.xmlには、そういうような役割があったのを始めて知りました。 謎が解けました。 ありがとうございました。 |