Почему intairiJ 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, построенный 31 января 2017 года. 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 году. Создание EAP .

Вы можете использовать Gradle 3.3 или старше в качестве обходного пути до тех пор, пока не будет выпущен IDEA 2017.1.