一尘不染

从命令行在包中运行Java

java

我已经阅读了以前发布的问题。有些含糊不清,没有一个解决我的问题,所以我不得不再问一次。

我有两个简单的课程,

package One;
import One.Inner.MyFrame;
public class test
{
    public static void main(String args[])
    {
        MyFrame f= new MyFrame();
    }
}

另一类是

package One.Inner;
import java.awt.*;
import javax.swing.*;

public class MyFrame extends JFrame
{
    public MyFrame()
    {
        setPreferredSize(new Dimension(400,560));
        setVisible(true);
    }
}

我在Windows cmd中的基本文件夹“ basic”中。我用编译

basic> javac *.java -d .

将创建一个文件夹和子文件夹。

cd One
basic\One> java test

这会产生大量错误。许多答案旨在指定无效的完整路径。我的班级在One中,因此使用-cp指定One也不起作用。


阅读 327

收藏
2020-09-08

共1个答案

一尘不染

您将其运行为:

java One.Test

…但是从 目录(basic), 不是One目录中。您始终指定 标准的 类名。

哦,Java中的软件包名称应该是小写字母,因此应该是oneand one.inner,而不是Oneand
One.Inner。只是一个约定,但几乎每个人都遵循。

2020-09-08