Tomcatのサーバーオプションの詳細な説明

Tomcatのサーバーオプションの詳細な説明

1. 構成

デフォルトでは、最初の 2 つはチェックされていないので、チェックする必要があります。

デフォルトでは、プロジェクトが Tomcat にデプロイされると、プラグインはプロジェクト ファイルを、前の構成項目の [サーバーの場所] のサーバー パスを表示する wtpwebapps ディレクトリ、つまり現在のワークスペース配置されているディレクトリにコピーしますメタデータ サブディレクトリでは、ワークスペースD:\workspace の場合、ディレクトリは D:\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps になります

ただし、上記のオプションを選択した場合、プロジェクト ファイルは実行のためにこのディレクトリに公開されませんが、次のようになります。

Webリソースディレクトリは、 WebプロジェクトのWebContent 、つまりMaven Webプロジェクトのsrc/main/webappディレクトリです。

クラスファイルディレクトリは、現在構成されているクラスファイルの出力ディレクトリ、つまりMavenプロジェクトのtarget/classesディレクトリです。

タイムアウト

デフォルトでは、 start45秒、 stop は15秒です。startより大きな値に変更する必要がある場合があります。つまり、起動時間が指定された時間を超えて起動が完了しなかった場合は、エラーが報告されます。プロジェクトの起動に時間がかかる場合、これは明らかに望ましくないことなので、この値を変更する必要があります。

サーバー オプション -> モジュールを公開せずに提供するにチェックを入れます。チェックを入れないと、クラス ファイルを変更するたびに Web サーバーが継続的に再起動されます。Webプロジェクトの起動に時間がかかる場合は、タイムアウト時間も変更する必要があります。タイムアウト時間は、タイムアウトで設定できます

在Cotext節點中有一個reloadable='true'屬性,將它改為false,可以在修改java文件后不用重啟服務器即可生效,但是不包括新建java文件、添加方法和變量的操作

2. ファイルを閲覧する

コンテキスト ノードによって個別に生成されるファイル:

元の Tomcat インストール ディレクトリの conf/server.xml 内の Context ノード (2 番目のオプションをチェックした後、このノードは server.xml に存在しません):

<ホスト appBase="webapps" autoDeploy="true" name="localhost" unpackWARs="true">
  <Valve クラス名="org.apache.catalina.valves.AccessLogValve" ディレクトリ="logs" パターン="%h %l %u %t &quot;%r&quot; %s %b" プレフィックス="localhost_access_log" サフィックス=".txt"/>
  <コンテキスト docBase="D:\workspace\workspace(eclipse)\Shop\WebContent" パス="/Shop" 再ロード可能="true" ソース="org.eclipse.jst.jee.server:Shop">
    <リソース>
      <PreResources base="D:\workspace\workspace(eclipse)\Shop\build\classes" classLoaderOnly="false" className="org.apache.catalina.webresources.DirResourceSet" internalPath="/" webAppMount="/WEB-INF/classes"/>
    </リソース>
  </コンテキスト>
</ホスト>

3. 理由

1. 警告を防ぐために最初の項目をチェックします。

警告: ホスト appBase 内の docBase D:/Tomcat/webapps/Shop が指定されましたが、無視されます

確認すると、Tomcat は <workspace>.metadata.pluginsorg.eclipse.wst.server.coretmp0webapps に公開せずに、Eclipse の WebContent の下のコンテンツを直接使用することになります。
tmp0webappsの下の関連リソースを削除します。
同時に、<workspace>.metadata.pluginsorg.eclipse.wst.server.coreservers.xmlのserveModulesWithoutPublish=trueとtmp0/conf/server.xmlの<Context>構成が変更されます。

2. 警告を防ぐために 2 番目をチェックします。

警告: [SetPropertiesRule]{Server/Service/Engine/Host/Context} プロパティ 'source' を 'org.eclipse.jst.j2ee.server:strut2demo' に設定しても、一致するプロパティが見つかりませんでした。

[SetPropertiesRule] 警告が表示される理由は、Tomcat 6.0 以降では、server.xml のコンテキスト ノードでソース属性がサポートされなくなったためです。具体的な手順は次のとおりです。

Tomcat 6 では、Tomcat 4.x とは異なり、server.xml ファイルに <Context> 要素を直接配置することは推奨されません。これは、Tomcat を再起動せずにメインの conf/server.xml ファイルを再ロードできないため、コンテキスト構成の変更がより侵襲的になるためです。

最適化

メニュー「ウィンドウ」->「設定」を見つけます

英語のスペルチェックは役に立たないので、ここでスペルチェックを無効にします。場所:一般->エディター->テキストエディター->スペルスペルチェックを有効にするのチェックを外す

キャンセルできる別のチェックがあります:検証、すべてのバリデーターの一時停止のチェック

行番号の表示場所:一般->エディター->テキストエディター、行番号の表示をチェック

jsp ページのデフォルトのエンコーディングを utf-8 に変更します場所: Web->JSP ファイルエンコーディングを ISO 10646/Unicode ( UTF-8 )変更します。

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Tomcat の設定時に Eclipse がサーバー オプションを見つけられない問題の解決策

<<:  MySQL設定ファイルを変更できない問題の解決方法(Win10)

>>:  複数の画像を切り替えるJavaScript

推薦する

Nginx 外部ネットワーク アクセス イントラネット サイト構成操作

背景:サイトはフロントエンドとバックエンドから分離されています: vue+springbootフロン...

HTML マークアップ言語 - リファレンス

123WORDPRESS.COM HTML チュートリアル セクションに戻るには、ここをクリックして...

ラベルタグを使用してテキストをクリックしてラジオボタンを選択します

<label> タグは、入力要素のラベル (タグ) を定義します。ラベル要素はユーザーに...

DockerでSpringbootプロジェクトを実行する方法

1. IDEAの下にあるターミナルをクリックし、mvn clean installと入力します。 次...

モバイルアダプティブスタイルで@mediaを使用する方法

一般的な携帯電話のスタイル: @media all および (orientation : 縦向き) ...

Linux システムで MySQL の文字セットを UTF8 に変更する手順

目次1. データベース内の MySQL ステータスを確認します。 2. 設定ファイルを変更します。 ...

HTML ハイパーリンク スタイル (4 つの異なる状態) の設定例

コードをコピーコードは次のとおりです。 <スタイル タイプ="text/css&qu...

DockerでLNMPアーキテクチャを展開する方法

環境要件: IPホスト名192.168.1.1ノード1プロジェクト計画:コンテナネットワークセグメン...

MySQLでSQL文がどのように実行されるかの詳細な説明

概要最近MySQL関連の知識を勉強し始めました。学んだ知識ポイントと自分の理解を元に整理して共有しま...

LinuxにDockerをインストールする(非常に簡単なインストール方法)

最近、かなり暇です。大学4年生として数か月間インターンをしていました。インターンとして、Docker...

Dockerfile に基づいて Tomcat イメージを構築する方法

Dockerfile は Docker イメージを構築するために使用されるファイルです。コマンドパラ...

Vue.set() と this.$set() の使い方と違い

開発に Vue を使用する場合、次のような状況に遭遇することがあります。Vue インスタンスを生成し...

MySQL に接続されている IP アドレスを表示する方法の例

具体的な方法:まずコマンドプロンプトを開きます。次に、[ mysql -u root -p ] コマ...

JSはカリキュラムタイムテーブルアプレット(スーパーカリキュラムタイムテーブルを模倣)を実装し、カスタムバックグラウンド機能を追加します

概要:市販されているいくつかのタイムテーブルソフトウェアから教訓を得ました。機能が複雑すぎるため、タ...

MySQL における「:=」と「=」の違いの簡単な分析

=設定および更新の場合にのみ、:= と同じ効果、つまり代入効果があり、それ以外の場合は等号の効果があ...