5

필자는 maven2와 hudson을 잠깐 사용하여 계속 통합하고 있지만 Eclipse와 Maven이 잘 작동하지 않는다는 것을 알았습니다. 물론 플러그인이 있지만, Eclipse 프로젝트가 maven 프로젝트를 좋아하고 빌드 타임과 유닛 테스트가 너무 길다는 것을 깨닫게하는 것은 괴상합니다. 개미가없고 메이븐이 포함되지 않은 순수 이클립스 프로젝트로 다시 전환하는 것을 고려하고 있습니다. 가장 작은 플러그인과 가능한 JavaRebel 에이전트를 사용하면 빌드 - 배포 테스트 사이클이 매우 빨라집니다. 그러나 나는 여전히 자동 및 테스트를 원합니다.Eclipse 프로젝트와의 지속적인 통합은 어떻게 사용합니까?

Eclipse 프로젝트와의 지속적인 통합은 어떻게 사용합니까?

명령 줄 방법이 있습니까?

기본적으로 이미 지원하는 빌드 서버가 있습니까?

답변

2

나는 좋은 해결책을 발견했다. "허용 출력 소스 폴더 : 나는 단순히 받는다는을 사용하는 경우 작업 및 전화 박스의 선택을 해제>

Eclipse-> 프로젝트 속성 -> 자바에서

이 경로 - 빌드 소스 이클립스 (이클립스 시장에서 설치할 수 있습니다) infinitest 있어요 폴더 "

그러면 프로젝트에 둘 이상의 출력 경로가있을 수 있으며 Eclipse는 테스트 클래스를 클래스 경로의 일부로보고하기 시작합니다. Infinitest는 이제이를 찾아 실행 테스트를 시작합니다!

은 내가 한 모든 내가 두 개의 프로젝트로 분할 생각하지 않았다, 공식 메이븐 이클립스 플러그인을 사용하여 내 POM에

<dependencies> 
    <dependency> 
     <groupId>junit</groupId> 
     <artifactId>junit</artifactId> 
     <version>4.5</version> 
     <!-- <scope>provided</scope> --> 
    </dependency> 

    <dependency> 
     <groupId>org.infinitest</groupId> 
     <artifactId>infinitest</artifactId> 
     <scope>test</scope> 
     <version>4.0</version> 
    </dependency> 

</dependencies> 
4

예, Eclipse Maven2 플러그인은 현재 쓰레기입니다. 하지만 Maven2를 사용하면 많은 이점이 있으므로 실제로 균형을 유지할 것을 제안합니다.

Eclipse를 사용하여 종속성을 관리하기 위해 Maven을 개발하고 사용하는 것입니다. 명령 줄에서 "mvn"을 실행하여 다른 모든 작업을 수행 할 수 있습니다. 우리는 자체적 인 통합 테스트 프로젝트 (...- itest)에서 테스트를 수행하고 2 단계로 빌드하고, 실제 코드를 빌드하고, 2 단계는 빌드를 수행하고 가장 적게 프로젝트를 실행하는 연속 통합 서버를 보유합니다. (첫 번째 패스 (순수 빌드)는 일반적으로 매우 빠른이며, 통합 테스트는 일반적으로 꽤 소요) 시험의 실행과 (구축 할 수 있습니다.)

여기 MVN 실행 테스트하기 위해 명령 줄의 :의 mvn -o verify -Ditest

을 이 같은 말 : 물론 당신은 당신의 부모 치어에 'itest'프로파일을 정의 할 필요가 내가 CruiseControl을 이클립스 + Ant를 사용하여 공정 성공을 거두었습니다

<profiles> 
    <profile> 
    <id>integration-test</id> 
    <activation> 
     <property> 
     <name>itest</name> 
     </property> 
    </activation> 
    <build> 
     <plugins> 
     <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-surefire-plugin</artifactId> 
      <executions> 
      <execution> 
       <id>itest</id> 
      </execution> 
      </executions> 
      <configuration> 
      <testSourceDirectory>src/main</testSourceDirectory> 
      <testClassesDirectory>target/classes</testClassesDirectory> 
      <forkMode>once</forkMode> 
      </configuration> 
     </plugin> 
     </plugins> 
    </build> 
    </profile> 
</profiles> 
+0

재미있는 아이디어를이 추가되었다. 나는 보통 Maven 팬이다.하지만 빌드/테스트 사이클에 조금 시간이 걸린다. 이 아이디어는 내가 추측하는 약간을 빠르게 할 수있다. –

0

. 자동화를 원한다면 순수 Eclipse 이상을 필요로 할 것입니다.

CruiseControl은 소스 컨트롤에서 프로젝트 복사본을 자동으로 체크 아웃하고 빌드하고 테스트를 실행 한 다음 웹 응용 프로그램을 결과로 업데이트 할 수 있습니다. 그것은 내가 그것을 사용했던 꽤 매끄러웠다. 그러나 그것은 오래 전이었다.