tomcat6을 설치하려면 왜 /usr/share/java에 대한 소프트 링크를 만들어야 합니까?

tomcat6을 설치하려면 왜 /usr/share/java에 대한 소프트 링크를 만들어야 합니까?

여기 지침을 사용하여 lucid에 tomcat6을 설치했습니다.https://help.ubuntu.com/10.04/serverguide/C/tomcat.html

(인스턴스 수준 버전을 만들지 않았습니다. 시스템 수준 버전이 괜찮았습니다.)

시작하려고 할 때 로그에 다음 오류가 발생했습니다.

java.lang.ClassNotFoundException: org.apache.catalina.startup.Catalina
    at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
    at org.apache.catalina.startup.Bootstrap.init(Bootstrap.java:216)
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:391)

이 문제는 다음을 수행하여 해결되었습니다.

root@...:/var/lib/tomcat6# ln -s /usr/share/java lib

왜 내가 이 일을 해야 했나요? 왜 상자 밖에서 작동하지 않습니까? (왜 이게 본문에 없나요?Tomcat의 우분투 매뉴얼?)

답변1

다음을 사용하여 Tomcat 설치:

sudo apt-get install tomcat6

Tomcat을 서비스로 설치하고 시작해야 합니다. 다음을 사용하여 서비스를 시작하고 중지할 수 있습니다.

sudo /etc/init.d/tomcat6 start
sudo /etc/init.d/tomcat6 stop

http://localhost:8080/브라우저를 사용하거나 명령줄에서 을 보면 서비스가 실행 중인지 확인할 수 있습니다 .

curl http://localhost:8080/

이것이 기본적으로 작동하지 않는다면 컴퓨터 설정 방법이나 Tomcat 서비스 실행 방법에 이상한 점이 있는 것입니다.

/etc/init.d/tomcat6 스크립트를 사용하는 것 이외의 다른 방법으로 Tomcat을 실행하려는 경우 문제가 발생할 수 있습니다. Tomcat 배포판과 파일의 위치를 ​​정의하는 두 가지 환경 변수가 있습니다. CATALINA_HOME 및 CATALINA_BASE. 패키지의 바닐라 설치의 경우 init.d 스크립트에 의해 자동으로 다음과 같이 설정됩니다.

CATALINA_HOME=/usr/share/tomcat6
CATALINA_BASE=/var/lib/tomcat6

다른 방법으로 Tomcat을 실행하려는 경우 이러한 변수가 올바르게 설정되지 않아 설명하는 오류가 발생할 수 있습니다.

패키지된 Tomcat 서버는 Tomcat을 서버에서 백그라운드 서비스로 실행하는 데 사용하도록 설계되었으므로 실제로는 init.d 스크립트를 사용하여 시작하고 중지해야 합니다. 개발 시스템(예: Eclipise와 같은 IDE)에서 Tomcat을 실행하려는 경우 패키지가 Tomcat을 설치하는 방식이 적합하지 않다는 것을 알게 될 것이며 대신 다음 중 하나를 사용하여 개인 인스턴스를 설치해야 합니다.지침서버 매뉴얼이나다운로드 중Tomcat 웹사이트에서 직접 다운로드하여 수동으로 추출합니다.

관련 정보