2012-06-04 2 views
0

나는 gradle이 관리하는 다중 모듈 프로젝트를 운영하고 있습니다. 디렉토리 구조는 다음과 같다 :gradle - 다중 모듈 프로젝트 - 개 틀린 실행 디렉토리

:

  • 모니터링
    • 클라이언트
    • 서버

    나는 다음과 같은 예외에를 얻을 모니터링 수준 'Gradle을 전쟁'을 호출

"모니터링/js가 없습니다." 언급 된 작업이 프로젝트의 루트 레벨에서 실행되기 때문에

task copyJs << { 

    'mkdir src/main/webapp/js'.execute() 

    def ant = new groovy.util.AntBuilder() 
    ant.copy(todir: 'src/main/webapp/js') { 
      fileset(dir: 'js') { 
       include(name: '**/*.js') 
      } 
    } 
} 

예외가 발생합니다 클라이언트의 build.gradle에서 오는

. 적절한 (클라이언트) 수준에서 실행되도록 변경하는 방법? 어떻게 사용되는 개미 작업에 대한 기반을 변경하려면?

task copyJs << { 

    file('src/main/webapp/js').mkdir() 

    copy { 
     into 'src/main/webapp/js' 
     from('js') { 
      include '**/*.js' 
     } 
    } 
} 

답변

1

을 수행 할 수 있어야 또 다른 옵션은 복사 작업을 사용하는 것입니다 : 그렇지 않은 경우 출력 디렉토리가 자동으로 생성되어, 이것은 장점이

task copyJs(type:Copy){ 
    into('src/main/webapp/js') 
    from('js') { 
     include '**/*.js' 
    } 
} 

을 아직 존재합니다. 위의 대답 에서처럼 복사 작업 대신 복사 작업을 사용하는 또 다른 이점은 복사 작업이 증분 빌드 실행 (최신 검사)을 지원한다는 것입니다.

안부, René

관련 문제