この解決策を長い間探し回っていましたが、見逃したのか、それとも単に入力ミスをしただけなのかはわかりませんが、Gradle スクリプトがコンパイルされません。Gradle に移行していますが、Gradle の使用は初めてです。依存関係の管理には Maven を使うのに慣れていますが、今のところ Gradle が最適のようです。次のコード スニペットを実行すると、次のようになります。
dependencies {
compile group: 'org.bukkit', name: 'bukkit', version: '1.7.9-R0.1-SNAPSHOT'
compile('io.ibj:MattLib:1.1-SNAPSHOT') {
exclude group: 'de.bananaco'
exclude 'net.milkbowl:vault:1.2.27'
}
compile group: 'net.citizensnpcs', name: 'citizens', version: '2.0.12'
compile group: 'com.sk89q', name: 'worldedit', version: '5.6.1'
compile group: 'com.sk89q', name: 'worldguard', version: '5.9'
compile group: 'net.milkbowl', name: 'vault', version: '1.2.12'
compile fileTree(dir: 'libs', includes: ['*.jar'])
}
注: java、maven、nexus、shadow、rebel プラグインは適用されています。
Gradle タスクを実行すると、次のエラーが発生します。
Could not find method compile() for arguments [[io.ibj:MattLib:1.1-SNAPSHOT], build_1b5iofu9r9krp7o8mme0dqo9l$_run_closure2_closure8@66fb45e5] on root project 'project'
MattLib
プロジェクトから依存関係を削除し、次のように再挿入すると、
compile 'io.ibj:MattLib:1.1-SNAPSHOT'
スクリプトは完了しましたが、依存関係の問題があります。ここで読みました:
dependencies {
compile("org.gradle.test.excludes:api:1.0") {
exclude module: 'shared'
}
}
(第50章よりGradleマニュアル)
私が持っているものは動作するはずですが、なぜ動作しないのかわかりません。
gradle --version
出力:
Groovy: 1.8.6
Ant: Apache Ant(TM) version 1.9.3 compiled on December 23 2013
Ivy: 2.2.0
JVM: 1.8.0_05 (Oracle Corporation 25.5-b02)
OS: Windows 7 6.1 amd64
ベストアンサー1
Javaプラグインによって導入されたcompile
、、、および構成はruntime
、以降は非推奨となっていることに注意してください。testCompile
testRuntime
グラドル4.10(2018年8月27日)、そして最終的にグラドル7.0(2021年4月9日)。
前述の構成は、それぞれ、、、およびに置き換える必要implementation
がruntimeOnly
ありtestImplementation
ますtestRuntimeOnly
。