2009-08-18 3 views
1

Java EE 응용 프로그램 서버 (현재 JBoss를 사용하고 있지만 가까운 미래에 GlassFish로 전환) 용 웹 응용 프로그램을 개발하는 프로그래머 팀과 협력하고 있습니다. Java EE 서버 자체에 응용 프로그램에서 사용하는 라이브러리를 설치해야하는지 또는 서버에 배포하는 모든 .war 파일로이 라이브러리를 패키지해야하는지 궁금합니다.Java EE 응용 프로그램 서버 라이브러리

일반적인 위치에서 서버에 라이브러리를 설치하는 분명한 이점은 훨씬 가벼운 응용 프로그램 패키지이지만 다른 한편으로는 원하는 시점에 문제가 발생하지 않도록하려는 것입니다. 설치된 라이브러리의 최신 버전을 사용하십시오.

나는이 질문이 정말로 답을 가지고 있지 않다는 것을 깨닫는다. 그러나 그 답은 분명히 이것에 대해 가야 할 길이나 길은 분명히있다.

+1

질문을 문구로 사용하고 싶을 수 있습니다. :-) –

답변

4

일반적으로 응용 프로그램 별 라이브러리를 EAR/WAR에 보관하십시오. 더 많은 라이브러리와 응용 프로그램을 배포 할 때 다른 응용 프로그램과의 호환성 문제를 일으킬 수있는 라이브러리를 발견하게됩니다. (심지어 commons-logging으로 인해이 문제가 생깁니다.)

응용 프로그램 서버는 가능한 한 가늘고 의미가 있어야하며 클래스 경로가 손상되지 않도록해야합니다. EARS에 라이브러리를 보관하십시오.

+0

+1, 정확하게 우리는 우리의 WAR/EAR로 라이브러리를 패키지합니다. – Powerlord

+0

그건 많은 의미가있어, 입력 해 주셔서 감사합니다! – TimmyJ

1

darthcoder에 대한 악마의 대변자를 플레이하려면 귀에 포장하는 것이 확실히 좋습니다.하지만 귀/전쟁을 재구성하고 배포 할 때마다 시간이 많이 걸립니다. 병의 수에 따라 다르지만 시간이 지남에 따라 늘어납니다. 개발을 위해 컨테이너에 넣는 것이 좋습니다. (특히 PermGen 재배치 문제가있는 경우) 프로덕션을 위해서는 응용 프로그램과 함께 제공해야한다는 것에 동의합니다.

0

EAR/WAR에서 필요한 모든 용기를 항상 포장하십시오. 크기와 빌드 시간을 걱정하지 마십시오. 30 메가와 70 메가의 EAR로 작업했으며 큰 문제는 아니 었습니다. 또한 새 애플리케이션 서버에 쉽게 배포 할 수 있습니다. 응용 프로그램 서버가있는 상자 (항상 ftp/copy EAR/WAR)에서 배포합니다.

펑키 한 도구를 사용했다면 절대적으로 필요한 것을 포함하여 EAR/WAR의 크기를 크게 줄일 수 있습니다.

제 경험상, 제대로 구성된 응용 프로그램 서버에 의존하는 것이 적을수록 좋습니다.

관련 문제