Java 컴파일은 어떻게 하나요?
💡 요약 정리
- 다른 환경에서 만든 class 파일은 서버에서 동작하지 않을 수 있습니다. 소스(.java)를 서버로 가져와 직접 컴파일하세요.
- 서블릿 라이브러리 경로를 -classpath에 지정해야 합니다. 예: /home/.../tomcat/lib/servlet-api.jar
- 단독 서버와 공용 서버는 참조 경로가 다릅니다. 아래 예시 명령을 사용하되 USER_ID를 실제 계정명으로 바꾸세요.
- -d . 옵션은 현재 디렉터 리에 class 파일을 생성합니다.
1. 컴파일 전 확인사항
- 다른 버전에서 만들어진 class 파일은 서버에서 동작하지 않을 수 있습니다.
- 이 경우, java 소스 파일(.java)을 서버로 가져와 서버에서 직접 컴파일하면 정상적으로 사용할 수 있습니다.
- 예를 들어 cafe24.java 파일을 컴파일할 때는 컴파일 옵션에 classpath를 반드시 지정하세요.
2. 단독 서버에서 컴파일하기
- 단독 서버에서 서블릿 라이브러리 경로를 지정한 기본 예시:
javac -d . -classpath /home/hosting_users/USER_ID/tomcat/lib/servlet-api.jar cafe24.java
- 라이브러리가 2개 이상일 경우(콜론으로 구분):
javac -d . -classpath /home/hosting_users/USER_ID/tomcat/lib/servlet-api.jar:/home/hosting_users/USER_ID/tomcat/lib/servlet.jar cafe24.java
3. 공용 서버에서 컴파일하기
- 공용 서버에서 서블릿 라이브러리 경로를 지정한 예시:
javac -d . -classpath /home/tomcat/common/lib/servlet-api.jar cafe24.java
4. 옵션 설명
- -d .: 현재 디렉터리에 컴파일 결과(class 파일)를 생성합니다.
- -classpath: 컴파일 시 참조할 라이브러리 경로입니다. servlet-api.jar의 경로를 지정해야 정상적으로 컴파일됩니다.