gradle은 maven과 다르게 provided가 지원되지 않는다.
지원되지 않기 때문에 다양한 방법으로 provided를 사용하고 있는데, spring.org에서 해결책을 내놓은 plugin으로 해결 가능하다.
github 주소는 이곳에,
https://github.com/spring-projects/gradle-plugins/tree/master/propdeps-plugin
사용법은 아래와 같다.
buildscript { repositories { maven { url 'http://repo.springsource.org/plugins-release' } } dependencies { classpath 'org.springframework.build.gradle:propdeps-plugin:0.0.1' } } // ... configure(allprojects) { apply plugin: 'propdeps' apply plugin: 'propdeps-maven' apply plugin: 'propdeps-idea' apply plugin: 'propdeps-eclipse' }
dependencies {
compile("commons-logging:commons-logging:1.1.1")
optional("log4j:log4j:1.2.17")
provided("javax.servlet:javax.servlet-api:3.0.1")
testCompile("junit:junit:4.11")
}
기존의 idea, eclipse task역시 반영을 받기 때문에 매우 유용하게 사용 가능하다.