我刚刚将Maven Java / Kotlin项目转换为Gradle,它似乎总体上运行良好(这是我第一次使用Gradle)。但是我习惯右键点击我的sources-root文件夹(src/main/java
)来运行Rebuild '<default>'
和Run 'All Tests'
(在不同的时间)。现在,当我这样做进行测试时,我得到一个小黄色气球:
在模块“MyProject.main”中找不到测试。请改用模块“MyProject.test”
我可以训练自己从test-sources-root文件夹(Run 'All Tests'
)右键单击src/test/java
。但奇怪的是,IDEA会提出做一些它无法做到的事情。
我想知道我是否需要在我的build.gradle
或settings.gradle
文件中指定不同/更好的东西?或者可能在某处调整IntelliJ设置?有了Maven项目,我怀疑每当我更改Maven时,我只需要告诉IDEA自动刷新它的项目。
我的整个项目都被检入Github:TestUtils
如果你不想点击,这是我的build.gradle文件:
/*
* This file was generated by the Gradle 'init' task.
*/
plugins {
id 'java'
id 'maven-publish'
id 'org.jetbrains.kotlin.jvm' version '1.3.21'
}
repositories {
mavenLocal()
maven {
url = 'http://repo.maven.apache.org/maven2'
}
}
dependencies {
compile 'junit:junit:4.12'
compile 'javax.servlet:javax.servlet-api:4.0.1'
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8"
}
task sourcesJar(type: Jar) {
classifier = 'sources'
from(sourceSets.main.allJava)
}
task javadocJar(type: Jar) {
classifier = 'javadoc'
from(javadoc.destinationDir)
}
group = 'org.organicdesign.testUtils'
version = '0.0.8'
description = 'TestUtils'
sourceCompatibility = '1.8'
publishing {
publications {
maven(MavenPublication) {
from(components.java)
artifact(sourcesJar)
artifact(javadocJar)
}
}
}
这是settings.gradle:
/*
* This file was generated by the Gradle 'init' task.
*/
rootProject.name = 'TestUtils'
当我在一个文件夹中解压缩Gradle,设置GRADLE_HOME并将其添加到我的路径时,我遇到了各种问题,IntelliJ不知道需要重建什么。 Deleting IntelliJ's output directory帮助了一些人。
然后有一天,将IDEA升级为:
IntelliJ IDEA 2019.1 (Ultimate Edition)
Build #IU-191.6183.87, built on March 27, 2019
JRE: 1.8.0_202-release-1483-b39 amd64
JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o
Linux 4.15.0-47-generic
然后我使用SDKMAN!作为Gradle docs instructed安装Gradle并将项目重新导入IDEA。这个问题和我所有其他构建问题都消失了。哪些事情真正解决了我的问题?我不知道。