因此,我想运行一个名为WordFrequencyCounter的类,该类嵌套在以下文件夹中:C:\ Users \ Mike \ Documents \ Computer Science \ AI \ Machine Learning \ 175 \ Assignment 2 \ src \ ir \ assignments \ two \ b

但是当我进入该文件夹并运行时:

javac WordFrequencyCounter.java

它给我一个错误,因为它说找不到
导入ir.assignments.two.a。频率;
具体来说,它说软件包ir.assignments.two.a不存在,但是此文件位于:

C:\ Users \ Mike \ Documents \ Computer Science \ AI \ Machine Learning \ 175 \ Assignment 2 \ src \ ir \ assignments \ two \ a

我还尝试从以下文件夹中调用javac WordFrequencyCounter.java:C:\ Users \ Mike \ Documents \ Computer Science \ AI \ Machine Learning \ 175 \ Assignment 2

但这也不起作用。所以我想要的是能够编译和运行WordFrequencyCounter,然后将其输入位于
从命令行C:\ Users \ Mike \ Documents \ Computer Science \ AI \ Machine Learning \ 175 \ Assignment 2。我可以从IDE中执行此操作,但无法通过命令行运行它。

我认为这是一个与类路径有关的问题,但对于我的特定示例,我找不到任何有用的东西,而且我没有尝试过。


这是WordFrequencyCounter的主要方法:

public static void main(String[] args) throws FileNotFoundException {
    File file = new File(args[0]);

    List<String> words = Utilities.tokenizeFile(file);

    List<Frequency> frequencies = computeWordFrequencies(words);
    Utilities.printFrequencies(frequencies);
}

最佳答案

转到src文件夹并运行

javac -d . ir/assignments/2/b/MainClass.java

并使用java ir.assignments.2.b.MainClass运行它。

关于java - 如何从具有2个不同包中的源代码的命令行运行Java代码?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13578010/

10-12 00:35
查看更多