Eclipse WTP vs sydeo,“게시하지 않고 모듈 제공”


103

Eclipse의 통합 플러그인 WTP를 사용하여 플러그인 sysdeo의 성능을 찾는 데 문제가 있습니다.

마이그레이션과 비교를 위해 Eclipse 내에서 별도의 프로젝트에 두 가지를 모두 설치했습니다.

내가 이해 한 바에 따르면 생산성의 차이를 발견했습니다. WTP는 소스를 디렉토리 빌드에 게시해야 tomcat이 정렬 할 수 있습니다. 이 "pulish"는 길다 : 수정 사항이 보이도록 컨텍스트를 재충전해야합니다. (대부분 마당 15 초-가장 긴 20 초)

Sysdeo no; 결과적으로 파일, 이클립스 빌드에 의해 수정이 이루어 지 자마자 이클립스 디렉토리를 대상으로 프로젝트 내부를 빌드하고 이러한 수정 사항을 즉시 사용할 수 있습니다 (브라우저에서 F5를 누르면 결과가 즉시 표시됨).

다음은 서버 구성입니다.

"게시하지 않고 모듈 제공"옵션을 사용하면 실행중인 프로젝트의 빌드 디렉토리를 선택하는 sydeo를 정확하게 만들 수 있습니다. 이 구성은 컨텍스트 파일에서 자신을 표현합니다. ( "Publish modulates contexts to serparate XML rows"를 체크 한 것으로 되돌릴 수 있습니다.)

이 파일의 비교 :

  • 다음은 sysdeo에서 생성 할 컨텍스트 파일입니다.
< Context path="/tatoile _syseo" reloadable="false" docBase="D:\32bit\serveur32bit\workspace\tatoile _syseo" workDir="D:\32bit\serveur32bit\workspace\tatoile _syseo\work" />
  • WTP에서 생성 할 파일 컨텍스트

<? xml version = "1.0"encoding = "UTF-8"?> <Context docBase = "D : \ 32bit \ serveur32bit \ workspace \ tatoile \ web"path = "/ tatoile"reloadable = "true"source = "org .eclipse.jst.jee.server : tatoile "> <Resources className ="org.eclipse.jst.server.tomcat.loader.WtpDirContext "extraResourcePaths ="/ WEB-INF / classes | D : \ 32bit \ serveur32bit \ workspace \ tatoile \ build \ classes "virtualClasspath ="D : \ 32bit \ serveur32bit \ workspace \ tatoile \ build \ classes "/> <로더 className ="org.eclipse.jst.server.tomcat.loader.WtpWebappLoader "useSystemClassLoaderAsParent ="false " virtualClasspath = "D : \ 32bit \ serveur32bit \ workspace \ tatoile \ build \ classes"/> <JarScanner scanAllDirectories = "true"/> </ Context>

나중에이 두 파일을 분석하면 비슷합니다.

이제 문제로 돌아 갑시다. 동일한 서버를 사용하므로 위의 컨텍스트 파일이 모두이 서버에 대해 정의됩니다. 경험 : 플러그인 sysdeo로 바람둥이를 시작하면 두 가지 컨텍스트에서로드가 하나는 sysdeo가 다른 하나를 WTP 방식으로 구성하도록 만들어집니다. 두 권한 모두 동일한 방식으로 반응하며 수정은 tatoile _syseo 및 tatoile에서 즉시 이루어집니다.

반면에 eclipse에서 플러그인 WTP (탭 서버 등)를 통해 tomcat을 시작하면 tatoile _syseo 및 tatoile 프로젝트에서 수정이 즉시 이루어지지 않습니다. 참고 : 수정 사항을 고려하려면 자동 다시로드를 반드시 Enabled로 설정해야합니다. (서버가 컨텍스트를 다시로드했다고 표시하면 수정 사항을 볼 수 있습니다.)

여기에 이미지 설명 입력

나는 그것으로부터 컨텍스트의 구성이 이유가 아니라 플러그인이 tomcat을 시작하는 방식이라고 추론합니다. 그리고 거기 또는 나는 말립니다 ...

다음은 WTP 프로젝트입니다.

여기에 이미지 설명 입력


5
Sysdeo 또는 WTP에 문제가 있습니까? OTOH 확실히 WTP는 변경에 더 많은 시간이 필요합니다. (1) 빌드 클래스 (2) 이전 웹 앱 배포 취소 (3) 빌드 결과를 tomcat의 배포 폴더에 복사 (4) tomcat이 자동으로 시작 앱. 한편 sysdeo를 사용하면 RAM의 클래스가 변경되는 즉시 수정됩니다 (모든 클래스 파일에서 새 날짜로 식별 됨). 그런 다음 즉석에서 수행 할 수없는 몇 가지 제한 사항이 있습니다 (새 메서드를 추가하면 클래스 구조도 변경됨).이 경우 경고가 표시됩니다.

동일한 프로젝트에서 Sysdeo와 WTP를 모두 사용했습니다. 내가 눈에 띄는 가장 큰 차이점은 Sysdeo의 구성이 나에게 더 쉬워 보였지만 이것은 편향 될 수 있다는 것입니다.
Markus 2014 년

2
이 문제는 WTP 배포와 함께 MAVEN을 추가하여 해결되었습니다. 성능 문제가 없습니다. 어떤 성능 문제와 나는 "게시하지 않고 모듈을 제공"활성화하지 않습니다
Vsplit

1
문제를 해결했다면 답변을 올릴 수 있습니까?
Anubian Noob

@AnubianNoob 예, 내 선례 게시물에서 설명했을 때. maven 구성을 사용하여 문제를 해결했습니다.
Vsplit

답변:


3

@Vsplit에서 인용 한 답변

이 문제는 WTP 배포와 함께 MAVEN을 추가하여 해결되었습니다. 성능 문제가 없으며 게시하지 않고 서브 모듈을 활성화하지 않습니다.


-1 이것은 대답이 아닙니다. 자세한 내용과 함께 답변을 추가하십시오.
Isaac G Sivaa 2014 년

1
안녕하세요, 답변이 늦어서 죄송합니다. 하지만 알아 두셔야 할 점은 Sysdeo 플러그인에 대한 issus 문제를 해결할 수 없습니다. 하지만 WTP 배포와 함께 Maven 플러그인을 사용합니다. 이 샘플 튜토리얼을 볼 수 있습니다. youtube.com/watch?v=YeC7XQho-O0
Vsplit 2014

2

플러그인 마켓 플레이스에서 m2e-wtp라는 무료 플러그인을 찾으십시오. 제공된 범위 문제를 처리합니다. 배포되지 않는 클래스에 관해서는 내가 보는 일반적인 위치는 배포 어셈블리 및 / 또는 Java 빌드 경로입니다. 항목 (및 종속 모듈)이 모두 있고 올바른 위치에 있는지 확인하십시오.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.