gradle - IntelliJ Gradle 意外删除自己的模块
问题描述
这是指示正在删除的模块的对话框
但是当我使用 build.gradle 导入一个新项目并且我现在没有启用时,auto import
我有一个对话框询问我是否要启用auto import
,并且模块不再自动删除。
这是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
}
编辑
当 Gradle 删除模块时,它也删除gradle.build
了 gradle 包装器。我已经使用默认 Java 模板创建了一个全新的项目,并将我的代码复制并粘贴到其中,但问题仍然存在。
解决方案
对于 Gradle 项目,IDE 会根据您的 build.gradle 脚本配置项目结构,包括项目中包含的模块。例如,如果您在 IDE Gradle 设置中启用了为每个源集创建单独的模块选项,IDE 会为每个 Grale 源集创建单独的模块。它在重新导入build.gradle 文件时执行。如果您在 IDE Gradle 配置中启用了自动导入,它会自动执行。
推荐阅读
- python - 在 python 3.8 的异步编程中如何使用 'yield' 语句?
- oracle - Oracle Forms 11g 和 Oracle Forms 12 之间是否存在不兼容问题?
- javascript - 获取目录大小的异步函数(不包括子目录)
- reactjs - 在反应中向组件添加自定义道具
- python - 在 Python 中使用 cx_freeze 时未添加 VCRUNTIME140.DLL
- angular - 具有可变内容的角动态形式
- python - 使用集合创建列会复制集合 n 次
- python - 获取不包括文档字符串的python函数源?
- typescript - 在 TypeScript 中使用嵌套类型?
- javascript - React Native - 数组移位的“轮盘赌”效果