IntelliJ Gradle неожиданно удаляет свои собственные модули - PullRequest
0 голосов
/ 22 ноября 2018

Это диалоговое окно с указанием удаляемых модулей

enter image description here

, но когда я импортирую новый проект с build.gradle, и я неenable auto import теперь у меня появляется диалоговое окно с вопросом, хочу ли я включить auto import, и модули больше не удаляются автоматически.

enter image description here

Вот файл build.gradle

/*------------------------------------------------------------------------------
Gradle latest file.

Build command:
./gradlew deploy

Create Javadocs at ./latest/docs/javadoc/index.html
./gradlew buildJavadocs

Other commands of interest:
./gradlew wrapper --gradle-version 4.7
./gradlew tasks
./gradlew properties

Manual search for dependencies in Gradle repository:
https://bintray.com/bintray/jcenter/io.appium%3Ajava-client
------------------------------------------------------------------------------*/
group 'com.my.group'
version '1.0-SNAPSHOT'

apply plugin: 'java'

sourceSets {
    main {
        java {
            srcDir 'src/'
        }
    }
}
sourceCompatibility = 1.8

repositories {
    jcenter()
}

dependencies {
    compile group: 'org.apache.commons', name: 'commons-lang3', version: '3.0'
    compile 'junit:junit:4.12'
    compile 'org.seleniumhq.selenium:selenium-java:3.11.0'
    compile 'io.appium:java-client:6.1.0' // /compile 'io.appium:java-client:6.0.0-BETA5'
    //compile 'io.appium:java-client:6.0.0-BETA5' // compile 'io.appium:java-client:6.1.0'
    compile 'com.googlecode.json-simple:json-simple:1.1.1'
    compile 'com.google.guava:guava:24.1-jre'
    compile group: 'org.apache.commons', name: 'commons-io', version: '1.3.2'
}

task copyToLib(type: Copy, dependsOn: build) {
    String dst = "$rootDir/jar"
    description "Copy library JAR dependencies to $dst"
    from configurations.runtime
    into "$dst"
}

task copyToOut(type: Copy, dependsOn: build) {
    String dst = "$rootDir/out"
    description "Copy library JAR output to $dst"
    from jar
    into "$dst"
}

task deploy {
   dependsOn clean
   dependsOn build
   dependsOn copyToLib
   dependsOn copyToOut
}

task buildJavadocs(type: Javadoc) {
  exclude 'srcOld/**'
  classpath += sourceSets.test.compileClasspath
  source += sourceSets.main.allJava
}

edit

Когда Gradle удаляет модули, он также удаляет gradle.build и упаковщик Gradle.Я уже создал новый проект с шаблоном Java по умолчанию, скопировал и вставил в него свой код, но проблема остается.

Ответы [ 2 ]

0 голосов
/ 23 ноября 2018

Учитывая ограниченную информацию, я дам вам специальное исправление, просто добавьте -----test в качестве подпроекта к корневым проектам settings.gradle, используя

include 'root-proj-dir:dir1:dir2:...:----test'

где структура каталогов

root-proj-dir
|
|
----dir1
|   |
|   |
|   ----dir2
|       |
|       |
|       ....----test
----settings.gradle
|
----build.gradle

Для получения дополнительной информации о работе с мультимодульными (или многопроектными в терминологии Gradle) сборками см. Эту ссылку

0 голосов
/ 22 ноября 2018

В случае проектов Gradle IDE настраивает структуру проекта, включая модули, включенные в проект, в соответствии с вашим сценарием build.gradle.Например, если у вас есть Создайте отдельный модуль для каждого исходного набора опция включена в IDE Настройки Gradle IDE создает отдельный модуль для каждого исходного набора Grale.Это происходит при повторном импорте файла build.gradle.Если в конфигурации IDE Gradle включен автоматический импорт, он делает это автоматически.

...