[英]Java can't find class in same package when I run Main from command line
我将 class 从 Main.java 移到他们自己的 .java 文件中,现在 IDE (IntelliJ) 找不到它们,即使它们在同一个 package 中。这是 Main 的第一行...
package readability;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
var filePath = args[0];
var textAnalyser = new TextAnalyser(filePath);
...这是我从命令行运行它时遇到的错误:
C:\Users\123md\IdeaProjects\Readability Score\Readability Score\task\src\readability>java Main.java in.txt
Main.java:8: error: cannot find symbol
var textAnalyser = new TextAnalyser(filePath);
^
symbol: class TextAnalyser
location: class Main
有趣的是,当我只是说String filePath = "in.txt"
并在控制台中运行它时,它确实找到了 class 并且运行正常,那么为什么当我从命令行运行它时它找不到 class? 谢谢!
您只能使用java
命令运行单个*.java
文件。 如果你的程序使用多个文件,你必须先编译它:
javac readability/Main.java readability/TextAnalyser.java
然后运行:
java readability.Main in.txt
有关详细信息,请参阅: https://openjdk.java.net/jeps/330
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.