2015-07-04 14 views
8

Tôi đang cố chuyển đổi dự án của tôi từ Maven thành Gradle. Dự án hiện đang sử dụng Spring Boot.Khởi động mùa xuân lấy tài sản của một gói trong Gradle

Trong cấu hình maven hiện tại của tôi, tôi có

<dependency> 
     <groupId>com.fasterxml.jackson.datatype</groupId> 
     <artifactId>jackson-datatype-hibernate4</artifactId> 
     <version>${jackson.version}</version> 
    </dependency> 

Trong đoạn trên, tài sản jackson.version đến từ mùa xuân Boot pom. Bây giờ, trong Gradle, tôi đang sử dụng plugin Spring Boot và Im đang cố gắng sử dụng đoạn mã bên dưới ..

buildscript { 
repositories { 
    mavenCentral() 
} 
dependencies { 
    classpath("org.springframework.boot:spring-boot-gradle-plugin:1.2.4.RELEASE") 
}} 
    apply plugin: 'idea' 
apply plugin: 'spring-boot' 
apply plugin: 'java' 

dependencies { 
    compile("com.fasterxml.jackson.datatype:jackson-datatype-hibernate4") 
} 

Ở trên, tôi mong đợi plugin khởi động mùa xuân để chèn phiên bản của jackson- mô-đun hibernate4. Nhưng, điều này không xảy ra

Bất kỳ ý tưởng nào về cách đạt được điều này? Ý định của tôi là sử dụng cùng một phiên bản của jackson xây dựng trên toàn bộ dự án.

Cảm ơn!

Trả lời

5

Bạn có thể sử dụng dependency management plugin để nhập bom khởi động của Spring Boot và truy cập vào các thuộc tính mà nó chỉ định.

Dưới đây là bạn gốc build.gradle tập tin với những thay đổi cần thiết:

buildscript { 
    repositories { 
     mavenCentral() 
    } 
    dependencies { 
     classpath "org.springframework.boot:spring-boot-gradle-plugin:1.2.4.RELEASE" 
     classpath "io.spring.gradle:dependency-management-plugin:0.5.2.RELEASE" 
    } 
} 

apply plugin: 'idea' 
apply plugin: 'spring-boot' 
apply plugin: 'java' 
apply plugin: 'io.spring.dependency-management' 

repositories { 
    mavenCentral() 
} 

dependencyManagement { 
    imports { 
     mavenBom 'org.springframework.boot:spring-boot-starter-parent:1.2.4.RELEASE' 
    } 
} 

ext { 
    jacksonVersion = dependencyManagement.importedProperties['jackson.version'] 
} 

dependencies { 
    compile("com.fasterxml.jackson.datatype:jackson-datatype-hibernate4:$jacksonVersion") 
} 

Xuân Boot 1.3 sẽ bắt đầu sử dụng các plugin quản lý phụ thuộc theo mặc định khi nó sẽ áp dụng các plugin và nhập khẩu các bom cho bạn.

+0

Thực ra, các phụ thuộc được định nghĩa trong org.springframework.boot: spring-boot-dependencies: $ springBootVersion, không cần phải nhập spring-boot-starter-parent. – wujek

Các vấn đề liên quan