为什么intelliJ IDEA依赖范围是“提供”而不是“编译”?
我希望IntelliJ IDEA将我的库作为“编译”范围而不是“提供”范围。 这是我的gradle文件的一部分:
apply plugin: 'java' sourceCompatibility = 1.8 repositories { mavenCentral() } dependencies { // Logging compile 'ch.qos.logback:logback-classic:1.2.1' compile 'com.getsentry.raven:raven-logback:7.8.2' // BigQuery compile 'com.google.api-client:google-api-client:1.20.0' compile 'com.google.apis:google-api-services-bigquery:v2-rev227-1.20.0' // Configuration management compile 'commons-configuration:commons-configuration:1.10' //Json compile 'org.json:json:20160810' //Kafka compile "org.apache.kafka:kafka-clients:0.10.1.1" testCompile group: 'junit', name: 'junit', version: '4.12' testCompile 'org.assertj:assertj-core:3.0.0' testCompile 'org.mockito:mockito-all:1.10.19' } task wrapper(type: Wrapper) { gradleVersion = '3.4' }
范围总是回到“依赖”选项卡中的“提供”,这非常烦人:
我正在运行:IntelliJ IDEA 2016.3.4 Build#IC-163.12024.16,建于2017年1月31日JRE:1.8.0_112-release-408-b6 x86_64
在IntelliJ IDEA中,这是Gradle 3.4特有的一个已知问题:
- IDEA-167412 Gradle 3.4-rc-1将编译依赖关系更改为提供
- Gradle项目中的原始错误报告以及更多细节
- 来自负责任的开发人员关于“为每个源集创建模块”选项的评论以及Gradle集成如何在IntelliJ IDEA中工作
它已经在2017.1 EAP版本中修复 。
您可以使用Gradle 3.3或更早版本作为解决方法,直到发布IDEA 2017.1。
- 如何解决Gradle的DexArchiveBuilderException?
- Kotlin /本机安装错误:未找到'jni.h'文件
- 在库模块中使用Kotlin,而不在app模块中使用它
- 将kotlin库(不是Android)发布到jCenter
- 如何在Gradle Kotlin构建中配置processResources任务
- 错误:执行失败的任务':app:kaptDemoTestingDebugKotlin'
- 如何将kotlin-js-library更新为1.1.3,就像kotlin-gradle-plugin一样?
- Android Studio 3.1 Canary 3上的Gradle同步错误
- 如何在两个build.gradle.kts文件之间共享构建配置?