我是 gradle 和其他构建工具的新手。 我正在尝试编写一段代码来使用 log4j 记录一些信息。 因此,我必须在代码中导入记录器 org.apache.log4j.* 。 我的项目中还有一个 gradle 文件 build.gradle 。 当我构建 gradle 文件时,出现编译错误。据我所知,它会在编译时寻找上述依赖项。但根据我的理解,gradle 应该从存储库下载这个。
如果我错了,请纠正我。帮助我理解在这种情况下它是如何工作的。
最佳答案
像这样创建你的 build.gradle:
group 'test'
version '1.0-SNAPSHOT'
apply plugin: 'java'
sourceCompatibility = 1.8
repositories {
mavenCentral()
}
dependencies {
compile group: 'org.apache.logging.log4j', name: 'log4j-api', version: '2.8.1'
compile group: 'org.apache.logging.log4j', name: 'log4j-core', version: '2.8.1'
}
将 Main.java 添加到文件夹 src/main/java:
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.LogManager;
public class Main {
private static final Logger logger = LogManager.getLogger(Main.class);
public static void main(String[] args) {
logger.info("started");
}
}
并将 log4j2.xml 添加到 src/main/resources:
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="WARN">
<Appenders>
<Console name="Console" target="SYSTEM_OUT">
<PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>
</Console>
</Appenders>
<Loggers>
<Root level="info">
<AppenderRef ref="Console"/>
</Root>
</Loggers>
</Configuration>
尝试启动main方法。 如果您的 IDE 中出现一些错误,请尝试更新项目。在 Intellij IDEA 中,您可以使用屏幕右侧的 gradle->refresh project。
希望这会对您有所帮助。
关于java - 第一次编译时的 Gradle 依赖项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42645149/