গ্রুবি স্ক্রিপ্ট, গ্যাব এবং আইভি কনফিগারেশন
Publié le 14 August 2019
টিকিটের বিষয় হল Gradle বিল্ড স্ক্রিপ্টের কনফিগারেশন।
আমি রেফারেন্স না করে একটি Groovy স্ক্রিপ্ট ব্যবহার করতে চাই
গ্রেডল প্রকল্পে, যেখানে আমি তা সংযুক্ত করেছি।
আমি এই গ্রাভি স্ক্রিপ্টকে গ্রেডল বাইরে চালাতে সক্ষমতা চাই
বাহ্যিক নির্ভরতা পুনruder기의 জন্য Ivy অ্যানোটেশন ছাড়া
এগুলো কর্মক্ষমতা বা কম্পাইলেশনের সমস্যা তৈরি করতে আসেন না
Gradle বিল্ড স্ক্রিপ্টের.
কনফিগারেশনকে উদাহরণ দেওয়ার জন্য, আমি দুটি স্ক্রিপ্টে নির্ভর করি:
একটি Gradle বিল্ড স্ক্রিপ্ট এবং একটি গ্রুভি স্ক্রিপ্ট।
গ্রুভি স্ক্রিপ্টের প্রথমে লাইন ২-এ আছে,
একটি বাহ্যিক নির্ভরতা টариে নেওয়ার নির্দেশনা
আইভি নির্ভরতা ব্যবস্থাপক ব্যবহার করে।
#!/usr/bin/env groovy
@Grab("commons-io:commons-io:2.6")
import org.apache.commons.io.FileUtils
static String getSeparator() {
System.getProperty("file.separator")
}
String from = "${System.getProperty("user.home")}${separator}.config${separator}transmission${separator}torrents"
String to = "${System.getProperty("user.home")}${separator}Documents${separator}torrents_completed"
File fromDlDir = new File("${System.getProperty("user.home")}${separator}Téléchargements")
File fromDir = new File(from)
File toDir = new File(to)
Collection<File> torrentFiles = FileUtils.listFiles(
fromDir,
["torrent"] as String[],
false)
torrentFiles.addAll(FileUtils.listFiles(
fromDlDir,
["torrent", "torrent.added"] as String[],
false))
torrentFiles.empty ?: torrentFiles.each { it ->
FileUtils.copyFileToDirectory(it, toDir)
}
println torrentFiles.size()
বিল্ড.gradle ফাইলে, এখন আসুন দেখি কীভাবে সমন্বয় করতে হয়
দুইটি নির্ভরতা ব্যবস্থাপক, ivy এবং Gradle. দুইয়ের মধ্যে চুক্তি লাইনে করা হয়:
26, 30, 37, 38 et 39
এভাবে আমি হাতে আমার গ্রুভি স্ক্রিপ্ট চালাতে পারি,
এবং Gradle কম্পাইলেশন @Grab দ্বারা বাধিত নয়।
গ্রুভি স্ক্রিপ্টের নির্ভরতাগুলো Gradle-এ প্রদান করতে হবে না।
তবে আমি gradle থেকে groovy স্ক্রিপ্ট চালাতে পারি না.
plugins {
id "java"
id "groovy"
}
repositories {
mavenCentral()
jcenter()
}
sourceSets {
main {
java { srcDirs = [] }
groovy { srcDirs =["src/main/java", "src/main/groovy"] }
resources {
srcDirs =["src/main/resources"]
}
}
test {
java { srcDirs = [] }
groovy { srcDirs =["src/test/java", "src/test/groovy"] }
}
}
configurations {
ivy
}
dependencies {
ivy "org.apache.ivy:ivy:$ivy_version"
implementation "org.codehaus.groovy:groovy-all:$groovy_version"
}
tasks.withType(GroovyCompile) {
groovyClasspath += configurations.ivy
}
রেফারেন্স er টিকirot </tool_call>স্ট্যাক ওভারফ্লো