1 回答
TA贡献1824条经验 获得超6个赞
假设 1(错误):源类中没有导入 → 必须添加导入
看起来你import在课堂上缺少陈述Main。尝试这个:
import org.apache.log4j.BasicConfigurator;
import org.apache.log4j.Logger;
public class Main {
private static Logger logger = Logger.getLogger(Main.class);
public static void main(String[] args) {
BasicConfigurator.configure();
logger.info("in Main class");
}
}
真正的问题(在我修复帖子中的图像显示之后)
您正在运行编译,而不是使用 maven buth 和 command-line javac。没有 Maven,您就不会自动将依赖项添加到您的类路径中。
如果你想从命令行运行
在这种情况下,您必须将 log4j 添加到类路径中。它看起来像这样(从 sources 目录运行,这是<project_root>\src\main\java默认的 maven 布局:
javac company/Main.java -cp %userprofile%\.m2\repository\log4j\log4j\1.2.17\log4j-1.2.17.jar
我假设您的本地 Maven 存储库位于默认的 Windows 路径中%userprofile%\.m2。如果它在其他部分(或 Linux)中,则必须将路径更改为您的log4j-1.2.17.jar.
在这种情况下,该类Main.class将被编译到同一个包中Main.class。
如果你想用maven编译
mvn compile只需从您所在的目录运行即可pom.xml。请注意,maven 会将类编译到target目录中,即您编译的类将在路径中\target\classes\company\Main.class(相对于您的项目根目录,您pom.xml所在的位置)。
添加回答
举报