ใช้เครื่องมือแก้ไขข้อความเพื่อเปิดไฟล์ batch startup.bat เพื่อเริ่มต้น Tomcat และอ่านอย่างระมัดระวัง ในไฟล์นี้ก่อนอื่นให้พิจารณาว่าตัวแปรสภาพแวดล้อม catalina_home นั้นว่างเปล่าหรือไม่ หากว่างเปล่าตั้งค่าไดเรกทอรีปัจจุบันเป็นค่าของ catalina_home จากนั้นตรวจสอบว่า bin/catalina.bat มีอยู่ในไดเรกทอรีปัจจุบันหรือไม่ หากไฟล์ไม่มีอยู่ให้ตั้งไดเรกทอรีหลักของไดเรกทอรีปัจจุบันเป็นค่าของ catalina_home ตามลำดับชั้นของไดเรกทอรีการติดตั้ง Tomcat บนเครื่องของฉันค่าของ catalina_home ถูกตั้งค่าเป็นไดเรกทอรีการติดตั้ง Tomcat หากตัวแปรสภาพแวดล้อม catalina_home มีอยู่แล้วคำสั่ง "catalina.bat start" ในไดเรกทอรี bin จะถูกเรียกผ่านตัวแปรสภาพแวดล้อมนี้ จากการวิเคราะห์นี้เราได้เรียนรู้สองข้อมูล หนึ่งคือเมื่อ Tomcat เริ่มต้นเราต้องค้นหาตัวแปรสภาพแวดล้อม catalina_home หาก startup.bat ถูกเรียกในไดเรกทอรี bin ของ Tomcat Tomcat จะตั้งค่า catalina_home โดยอัตโนมัติและถูกต้อง อีกอย่างคือการเรียกใช้คำสั่ง startup.bat ซึ่งจริง ๆ แล้วดำเนินการคำสั่ง "catalina.bat start"
หากเราเรียก startup.bat เมื่อไดเรกทอรี bin ของ Tomcat เป็นไดเรกทอรีปัจจุบันข้อความแสดงข้อผิดพลาดที่แสดงในรูปด้านล่างจะปรากฏขึ้น (ยกเว้นการเรียกใช้ในไดเรกทอรีหลักของไดเรกทอรี bin)
เกิดข้อผิดพลาดเมื่อเริ่มต้น Tomcat ในไดเรกทอรีอื่น ๆ
หากคุณต้องการเริ่มต้น Tomcat ในไดเรกทอรีใด ๆ คุณต้องตั้งค่าตัวแปรสภาพแวดล้อม catalina_home คุณสามารถเพิ่ม catalina_home ลงในตัวแปรสภาพแวดล้อมของระบบ Windows XP และค่าของมันคือไดเรกทอรีการติดตั้ง Tomcat บนเครื่องของฉันไดเรกทอรีการติดตั้งของ Tomcat คือ D: /apache-tomcat-6.0.36-windows-x86/apache-tomcat-6.0.36 กระบวนการของการเพิ่มตัวแปรสภาพแวดล้อม catalina_home นั้นเหมือนกับกระบวนการเพิ่มตัวแปรสภาพแวดล้อม Java_home ที่กล่าวถึงข้างต้น หากคุณไม่ต้องการเพิ่มในตัวแปรสภาพแวดล้อมระบบคุณสามารถตั้งค่าได้โดยตรงในไฟล์ startup.bat ต่อไปนี้เป็นส่วนของไฟล์หลังจากตั้งค่า catalina_home ในไฟล์ startup.bat:
rem $ id: startup.bat 908749 2010-02-10 23: 26: 42z Markt $
Rem -----------------------------------------------------------------------
ตั้งค่า catalina_home = d: /apache-tomcat-6.0.36-windows-x86/apache-tomcat-6.0.36
Rem Guess catalina_home หากไม่ได้กำหนดไว้
ตั้งค่า "current_dir =%cd%"
ถ้าไม่ใช่ "%catalina_home%" == "" goto gothome
ตั้งค่า "catalina_home =%current_dir%"
ถ้ามีอยู่ "%catalina_home%/bin/catalina.bat" goto okhome
ซีดี ..
-
โปรดทราบว่าจุดประสงค์ของรหัสนี้ที่แสดงเป็นตัวหนาคือการตั้งค่าตัวแปรสภาพแวดล้อม catalina_home ด้านล่างเป็นคำสั่งเพื่อตรวจสอบว่า catalina_home ว่างเปล่าหรือไม่ หากคุณไม่พบตำแหน่งที่ถูกต้องเพียงใส่การตั้งค่ารหัสตัวแปรสภาพแวดล้อม catalina_home ในบรรทัดแรกของไฟล์ ตัวแปรสภาพแวดล้อม Java_home ยังสามารถตั้งค่าในลักษณะเดียวกัน อย่างไรก็ตามหากคุณต้องการใช้ shutdown.bat ในไดเรกทอรีอื่น ๆ เพื่อปิดเซิร์ฟเวอร์ Tomcat คุณต้องตั้งค่าตัวแปรสภาพแวดล้อมสองตัวคือ catalina_home และ java_home ในไฟล์ shutdown.bat ตำแหน่งของตัวแปรนั้นเหมือนกับไฟล์ startup.bat ทั้งสองก่อนที่จะตัดสินว่า catalina_home ว่างเปล่าหรือไม่ แน่นอนว่าเพื่อหลีกเลี่ยงการติดตั้ง Tomcat อีกครั้งและสำหรับทุกคนเราจำเป็นต้องตั้งค่าหลังจากติดตั้ง Tomcat ใหม่ (Tomcat รุ่นเดียวกันจะต้องติดตั้งในตำแหน่งเดียวกัน) ควรเพิ่มตัวแปรสภาพแวดล้อมทั้งสอง Catalina_home และ Java_home ไปยังตัวแปรสภาพแวดล้อมของระบบ Windows XP
ผู้อ่านบางคนอาจประหลาดใจที่ชื่อของตัวแปรสภาพแวดล้อมของไดเรกทอรีการติดตั้ง Tomcat คือ catalina_home ตามการตั้งค่าของตัวแปรสภาพแวดล้อมอื่น ๆ Java_home แสดงถึงไดเรกทอรีการติดตั้งของ JDK ดังนั้นควรใช้ tomcat_home เพื่อเป็นตัวแทนของไดเรกทอรีการติดตั้งของ Tomcat แต่ทำไม catalina_home จึงควรใช้? ในความเป็นจริงก่อนที่ Tomcat 4 Tomcat_home ถูกใช้เพื่อเป็นตัวแทนของไดเรกทอรีการติดตั้ง Tomcat หลังจาก Tomcat 4 ใช้ catalina คอนเทนเนอร์ servlet ใหม่ดังนั้นชื่อของตัวแปรสภาพแวดล้อมก็เปลี่ยนเป็น catalina_home
ในระบบ Windows ชื่อของตัวแปรสภาพแวดล้อมนั้นปราศจากกรณีนั่นคือ Java_home และ Java_home เหมือนกัน
หลังจากทำความเข้าใจกับไฟล์ startup.bat ให้ดูที่ไฟล์ catalina.bat ที่รับผิดชอบในการเริ่มต้นเซิร์ฟเวอร์ Tomcat โดยการวิเคราะห์ไฟล์ catalina.bat เราพบว่ามันเรียกไฟล์ setclasspath.bat ในไฟล์ setclasspath.bat จะตรวจสอบว่าตัวแปรสภาพแวดล้อม java_home มีอยู่หรือไม่และผ่านตัวแปรสภาพแวดล้อม Java_home พบ java.exe ซึ่งใช้ในการเริ่มต้น Tomcat ในไฟล์นี้มีการตั้งค่าตัวแปรอื่น ๆ เพื่อแสดงการโทรไปยังคำสั่ง Java มาตรฐาน ผู้อ่านที่สนใจสามารถวิเคราะห์ไฟล์นี้ได้ด้วยตนเอง หลังจากดำเนินการ setclasspath.bat ส่วนที่เหลือของ catalina.bat เริ่มกระบวนการเริ่มต้นเซิร์ฟเวอร์ Tomcat
เมื่อดำเนินการ catalina.bat โดยตรงคุณจะต้องนำพารามิเตอร์บรรทัดคำสั่ง ผู้อ่านสามารถดำเนินการ catalina.bat ในหน้าต่างพรอมต์คำสั่งและพวกเขาจะพิมพ์พารามิเตอร์ต่าง ๆ และความหมายของคำสั่ง catalina.bat ดังแสดงในรูปด้านล่าง
(คลิกเพื่อดูภาพขนาดใหญ่) ข้อมูลพารามิเตอร์ของ catalina.bat ในรูปภาพ
พารามิเตอร์ที่ใช้กันทั่วไปคือเริ่มทำงานและหยุด การเริ่มต้นพารามิเตอร์หมายถึงการเริ่มต้นเซิร์ฟเวอร์ Tomcat ในหน้าต่างแยกต่างหากการเรียกใช้พารามิเตอร์หมายถึงการเริ่มต้นเซิร์ฟเวอร์ Tomcat ในหน้าต่างปัจจุบัน การหยุดพารามิเตอร์หมายถึงการปิดเซิร์ฟเวอร์ Tomcat เมื่อเราดำเนินการ startup.bat เราจริง ๆ แล้วคำสั่ง "catalina.bat start" เมื่อเราดำเนินการ shutdown.bat เราจริง ๆ แล้วคำสั่ง "catalina.bat stop" คำสั่ง "catalina.bat run" บางครั้งมีประโยชน์มากโดยเฉพาะอย่างยิ่งเมื่อเราต้องการดูข้อความแสดงข้อผิดพลาดของ Tomcat
เมื่อพัฒนาโปรแกรม JSP คุณมักจะพบหมายเลขพอร์ต 8080 บนเครื่องของคุณที่ถูกครอบครองโดยแอปพลิเคชันอื่น ๆ หรือเกิดข้อผิดพลาดเมื่อกำหนดค่า Server.xml เมื่อเริ่มต้นเซิร์ฟเวอร์ Tomcat ผ่าน startup.bat (เทียบเท่ากับการดำเนินการ "catalina.bat start") หากมีข้อผิดพลาดร้ายแรงในระหว่างการเริ่มต้นเนื่องจากเซิร์ฟเวอร์ Tomcat เริ่มต้นในหน้าต่างแยกต่างหากเมื่อการเริ่มต้นล้มเหลวหน้าต่างคำสั่งจะปิดโดยอัตโนมัติ เมื่อเกิดข้อผิดพลาดเราสามารถเปลี่ยนเป็นคำสั่ง "catalina.bat run" เพื่อเริ่มต้นอีกครั้ง เมื่อการเริ่มต้นล้มเหลวเซิร์ฟเวอร์ Tomcat จะสิ้นสุดลงอย่างผิดปกติ อย่างไรก็ตามข้อมูลข้อผิดพลาดเมื่อเริ่มต้นยังคงอยู่ในหน้าต่างพรอมต์คำสั่งปัจจุบันดังนั้นเราจึงสามารถค้นหาสาเหตุของความล้มเหลวในการเริ่มต้น
ข้างต้นคือการจัดเรียงข้อมูลสำหรับการวิเคราะห์การเริ่มต้นของ Tomcat และเราจะยังคงเพิ่มข้อมูลที่เกี่ยวข้องในอนาคต ขอบคุณสำหรับการสนับสนุนเว็บไซต์นี้!