[java] Eclipse 프로젝트에서 javax.servlet API를 가져 오려면 어떻게합니까?

Eclipse에서 서블릿으로 개발하고 싶지만 패키지 javax.servlet를 해결할 수 없다고 말합니다 . javax.servletEclipse 프로젝트에 패키지를 추가 하려면 어떻게 해야합니까?



답변

올바른 Eclipse 및 서버인지 확인하십시오

Enterprise Java 개발자 ( Enterprise 와 함께) 용 Eclipse IDE 이상을 사용하고 있는지 확인하십시오 . 여기에는 동적 웹 프로젝트를 작성하고 서블릿 컨테이너를 쉽게 통합 할 수있는 개발 도구가 포함되어 있습니다 (이 도구는 WTP 웹 도구 플랫폼의 일부 임). 이미 Java 용 Eclipse IDE (Enterprise 제외)가 있고 일부 관련 플러그인을 수동으로 설치 한 경우 제대로 수행되지 않았을 가능성이 있습니다. 그것을 버리고 가장 좋은 방법은 Enterprise Java 용 실제 Eclipse IDE를 사용하는 것입니다.

또한 프로덕션 환경에서 최소한 서블릿 컨테이너와 동일한 서블릿 API 버전 (예 : Apache Tomcat , Oracle GlassFish , JBoss AS / WildFly 등) 을 구현하는 서블릿 컨테이너가 시스템에 이미 설치되어 있는지 확인해야합니다 . ZIP 파일을 다운로드하고 압축을 풀면 충분합니다. Tomcat의 경우 EXE 형식을 다운로드 마십시오 . 이는 Windows 기반 프로덕션 환경 전용입니다. ao localhost의 Tomcat Server에 필요한 여러 포트 (8005, 8080, 8009)가 이미 사용 중 입니다.

서블릿 컨테이너는 서블릿 API의 구체적인 구현입니다. 점을 유의 자바 EE SDK의 Oracle.com에서 다운로드가 기본적으로 글래스 피쉬가 포함되어 있습니다. 따라서 Java EE SDK를 이미 다운로드 한 경우 기본적으로 GlassFish가 있습니다. 또한 GlassFish 및 JBoss AS / WildFly는 서블릿 컨테이너 이상의 기능을 제공하며 JSF, EJB, JPA 및 기타 모든 Java EE 성능도 지원합니다. ao Java EE 란 무엇입니까?


Eclipse에서 서버를 통합하고 Project와 연결

시스템에 Enterprise Java 용 Eclipse와 서블릿 컨테이너를 모두 설치했으면 Eclipse에서 다음 단계를 수행하십시오.

  1. Eclipse에서 서블릿 컨테이너 통합

    ㅏ. 서버보기를 통해

    • 열기 서버가 아래 상자에 볼 수 있습니다.
    • 거기를 마우스 오른쪽 버튼으로 클릭하고 새로 만들기> 서버를 선택하십시오. .
    • 적절한 서블릿 컨테이너 제조업체 및 버전을 선택하고 마법사를 안내하십시오.

      여기에 이미지 설명을 입력하십시오

    비. 또는 Eclipse 환경 설정을 통해

    • 열기 창> 환경 설정> 서버> 런타임 환경 .
    • 여기에서 서버를 추가 , 편집제거 할 수 있습니다 .

      여기에 이미지 설명을 입력하십시오

  2. 서버와 프로젝트 연결

    ㅏ. 새 프로젝트에서

    • 프로젝트 네비게이터 / 탐색기를 엽니 다왼쪽 를 .
    • 거기에서 마우스 오른쪽 버튼을 클릭하고 새로 만들기> 프로젝트 를 선택한 다음 메뉴 웹> 동적 웹 프로젝트에서 .
    • 마법사에서 대상 런타임 을 통합 서버로 설정하십시오 .

      여기에 이미지 설명을 입력하십시오

    비. 또는 기존 프로젝트에서

    • 프로젝트를 마우스 오른쪽 버튼으로 클릭하고 속성을 선택하십시오 .
    • 에서 대상 런타임의 섹션에서 통합 서버를 선택합니다.

      여기에 이미지 설명을 입력하십시오

    어느 쪽이든, Eclipse는 자동으로 빌드 경로에서 서블릿 컨테이너의 라이브러리를 가져옵니다. 이 방법으로 서블릿 API를 가져오고 사용할 수 있습니다.


느슨한 서버 특정 JAR 파일을 가지고 다니지 마십시오.

어떤 경우 든 프로젝트 의 빌드 경로 특성 을 피할 필요가 없습니다 . 당신은 위의 모든해야 결코 수동으로 복사 / 다운로드 / 이동이 / 라이브러리이 좋아하는 개별 servletcontainer 별을 포함 servlet-api.jar, jsp-api.jar, el-api.jar, j2ee.jar,javaee.jar 당신의 웹 애플리케이션은 그렇지 않은 일입니다 것입니다 경우 때문에, 그것은 단지 미래의 이식성, 호환성, 클래스 경로 및 유지 보수 문제로 이어질 것 등 해당 라이브러리를 원래 얻은 위치와 다른 make / version의 서블릿 컨테이너에 배포했습니다.

Maven을 사용하는 경우 대상 런타임에서 이미 제공 한 서블릿 컨테이너 특정 라이브러리가로 표시되어 있는지 확인해야합니다 <scope>provided</scope>.

여기 때 당신에게 쓰레기 당신이 얻을 수있는 몇 가지 일반적인 예외 인 /WEB-INF/lib또는 /JRE/lib, /JRE/lib/ext등 컴파일 오류를 수정 부주의 시도에서 servletcontainer 특정 라이브러리를 :


답변

javax.servlet 가져 오기

1 단계

프로젝트의 속성 으로 이동 하십시오 ( Alt+ Enter또는 마우스 클릭으로)

2 단계

확인 아파치 톰캣 7.0 에서 대상 런타임 과 작동합니다.


답변

Hari와의 약간의 차이 :

프로젝트 —> 특성 —> Java 빌드 경로 —> 라이브러리 추가 … —> 서버 런타임 —> Apache Tomcat —-> 완료를 마우스 오른쪽 단추로 클릭하십시오.


답변

서버 lib 폴더에서 servlet-api.jar을 포함하십시오.여기에 이미지 설명을 입력하십시오

이 단계를 수행

여기에 이미지 설명을 입력하십시오


답변

pom.xml에 javax.servlet 종속성을 추가하십시오. 문제가 해결 될 것입니다.

<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>javax.servlet-api</artifactId>
    <version>3.0.1</version>
    <scope>provided</scope>
</dependency>


답변

빠른 수정-Eclipse에서 작동했습니다-프로젝트-> 속성-> Java 빌드 경로 (Tab)-> 외부 JAR 추가-> 서블릿 API jar 구현 찾기 (Tomcat-이름이 servlet-api.jar 인 경우)-> 확인을 클릭하십시오. 그게 다야 !!


답변

당신은 단순히 복사 할 수 있습니다 servlet-api.jar및 WEB-INF에 lib 디렉토리 폴더에 그 jar 파일을 복사합니다. 그런 다음 프로젝트를 정리하고 빌드하면 오류가 해결됩니다.

  **OR**

다음 단계를 사용하여 jar 파일을 라이브러리에 직접 추가 할 수 있습니다.

  1. 프로젝트를 마우스 오른쪽 버튼으로 클릭하십시오.
  2. 속성으로 이동하십시오.
  3. Java 빌드 경로로 이동하십시오.
  4. 탭에서 라이브러리 추가 옵션을 선택하십시오.
  5. Jar 파일 추가
  6. servlet-api.jar파일 경로를 지정하십시오 .
  7. 프로젝트를 정리하고 빌드하십시오.