Gradle: thư mục resources hiển thị trong IDE
Đăng ngày 16 August 2019
Trong một dự án ứng dụng được điều phối bởi trình quản lý build Gradle,
sẽ dễ chịu hơn khi có thể quan sát được tất cả các hồ sơ
người tham gia phát triển ứng dụng,
như các thư mục tài nguyên không phải là
trong các đường dẫn theo quy ước.
Ví dụ tôi muốn thư mục `src/jbake
hiển thị dưới dạng ‘resource folder’,
có thể thực hiện việc này bằng cách vào cấu hình của dự án,
trong các trình hướng dẫn (wizards) của IDE. Tuy nhiên, tùy chọn này không được lưu khi tải lại lần sau
của dự án Gradle trong IDE. Để áp dụng cấu hình này một cách vĩnh viễn
giải pháp là ghi đè cấu hình các đường dẫn nguồn
trong tệp cấu hình build.gradle như tại các dòng 18, 19, 20 và 21:
build.gradle
plugins {
id "java"
id "groovy"
id "org.jbake.site" version "5.0.0"
id "org.ajoberstar.git-publish" version "2.1.1"
}
repositories {
mavenCentral()
jcenter()
}
group project_group
version project_version
sourceSets {
main {
java { srcDirs = [] }
groovy { srcDirs =["src/main/java", "src/main/groovy"] }
resources {
srcDirs =[
"src/main/resources",
"src/jbake"//in order to get site src content in the IDE
]
}
}
test {
java { srcDirs = [] }
groovy { srcDirs =["src/test/java", "src/test/groovy"] }
}
}
test {
useJUnitPlatform()
}
configurations {
ivy
}
dependencies {
ivy "org.apache.ivy:ivy:$ivy_version"
implementation "org.codehaus.groovy:groovy-all:$groovy_version"
implementation "org.asciidoctor:asciidoctor-java-integration:$asciidoctor_java_integration_version"
implementation "org.freemarker:freemarker:$freemarker_version"
testImplementation "org.junit.jupiter:junit-jupiter-api:$junit5_version"
testRuntimeOnly "org.junit.jupiter:junit-jupiter-engine:$junit5_version"
}
gitPublish {
repoUri = github_pages_blog_repository
branch = git_branch
contents {
from(file(jbake_content_from)) {
into jbake_content_to
}
}
}
tasks.withType(GroovyCompile) {
groovyClasspath += configurations.ivy
}