我正在学习如何在Intellij IDEA中使用Gradle自动导入必要的库(在Java项目中)。我在Gradle上创建了新的干净项目,在文件“build. gradle”中添加了依赖项,在文件“Main.java”中添加了导入,但库未导入,并且发生了错误。我希望Gradle应该自动从Maven Repository加载库,但没有发生。
我在Intellij IDEA中创建了一个新项目(file/new/project -在Java上,Gradle和"Gradle DSL“中的”Groovy“)。在文件”gradle-wrapper.properties“中,我成功地将Gradle更新到了版本8.0.2(因为默认情况下,IDEA使用第7版,然后指出它与JDK 19不兼容)。
然后,我将依赖项添加到'build.gradle'文件中:
repositories {
mavenCentral()
}
dependencies {
testImplementation (
"com.codeborne:selenide:6.3.5",
"org.junit.jupiter:junit-jupiter:5.8.2")
}
并将导入添加到“Main.java”中:
import org.junit.jupiter.api.Test;
import static com.codeborne.selenide.Condition.text;
import static com.codeborne.selenide.Selenide.$;
import static com.codeborne.selenide.Selenide.open;
public class Main {
public static void main(String[] args) {
System.out.println("Hello world!");
Selenide.open("https://www.google.com/");
}
}
我点击“重新加载所有Gradle项目”,它说:此版本中使用了弃用的Gradle功能,因此与Gradle 9.0不兼容。
但是导入没有发生,我无法运行'Main.java'。当我点击“Build project”时,它显示:
C:\IT\Projects\CheckingGradle\src\main\java\org\example\Main.java:2: error: package org.junit.jupiter.api does not exist
import org.junit.jupiter.api.Test;
failed
:compileJava
Main.java
package org.junit.jupiter.api does not exist
package com.codeborne.selenide does not exist
and so on
我预计Gradle应该从Maven Repository加载必要的库,但没有实现。
Github上的项目:https://github.com/Anton248/CheckingGradle
当我在不使用Gradle的情况下创建项目并手动添加库时,一切正常(https://github.com/Anton248/Study2)。
1条答案
按热度按时间tvmytwxo1#
您已将依赖项指定为测试依赖项(这些库通常是测试依赖项),但尝试使用这些库的代码位于 main 中。测试和其他使用测试依赖项的代码应放在
src/test/java
中,而不是放在src/main/java
中。或者,您需要将依赖项声明为普通(main)依赖项(例如,使用
implementation
而不是testImplementation
)。