Maven을 사용하는 Netbeaans를 사용하여 기본 Java 웹 프로젝트를 만들었습니다.Java WAR 배포 문제
내 '종속성'에 'javaee-web-api-6.0.jar'이 표시됩니다. 그러나 프로젝트를 빌드 할 때 .war 파일에서이 .jar 파일이 어디에도 포함되어 있지 않습니다.
내가 누락되었거나 .jar에 모든 종속성을 포함시키기 위해 필요한 추가 단계가 있습니까?
Maven을 사용하는 Netbeaans를 사용하여 기본 Java 웹 프로젝트를 만들었습니다.Java WAR 배포 문제
내 '종속성'에 'javaee-web-api-6.0.jar'이 표시됩니다. 그러나 프로젝트를 빌드 할 때 .war 파일에서이 .jar 파일이 어디에도 포함되어 있지 않습니다.
내가 누락되었거나 .jar에 모든 종속성을 포함시키기 위해 필요한 추가 단계가 있습니까?
서블릿 API 의존성은 이 아니어야합니다.이 결과로 나타나는 war 파일에 있어야합니다. 컨테이너에서 제공하는 종속성입니다. war 파일에 넣으면 클래스 로더 문제가 발생합니다. 전쟁 중에 존재한다면 대부분의 컨테이너는 항아리 파일을 무시할 것입니다.
javaee-api-6.0.jar and servlet-api-3.jar
이러한 jar는 이미 Tomcat에서 제공됩니다 (Tomact를 사용한다고 가정). <TOMCAT_HOME>\lib
에서이 항아리가 이미 있는지 확인하십시오.
Tomcat 7.0이 있고 lib 디렉토리를보고 있는데 거기에'javaee-api-6.0.jar '파일이 보이지 않습니다. 'servlet-api.jar'가 보입니다. –
기본적으로 같습니다. – NilsH
@NilsH 아니, Java EE는 Tomcat에 포함되어 있지 않은 것 같습니다. 서블릿 만있는 것 같습니다. –
javaee-web-api-6.0.jar 종속성의 범위를 확인하십시오. 이으로 제공된 경우 결과 전쟁에 번들되지 않습니다.
''제공된 '경우 번들로 묶을 필요가 없습니다. 이것이 옳습니다. – NilsH
@NilsH 죄송합니다. 오타를 잘못 말하면서 제가하고 싶은 말입니다. 유형을 수정했습니다. –
Java EE 6.0도 Tomcat에서 제공합니까? –
서블릿 API입니다. – NilsH
감사합니다. 전쟁의 WEB-INF/lib 디렉토리에 javaee-web-api-6.0.jar를 포함하는 것이 단점입니까? –