使用终端运行java文件

使用终端运行java文件,java,macos,terminal,Java,Macos,Terminal,我在Mac上工作,使用xcode保存我的java文件。我有一个文件在netbeans中运行时没有错误。该文件在作为子类的同一文件夹中有另一个文件。当我在终端中运行文件时,我怀疑子类文件没有运行,因为出现了多个找不到符号错误。你知道为什么吗?我使用cd命令调用该文件,直到到达包含这些文件的文件夹。然后我使用(javac-classpath“filename.java”)来运行该文件。这是一个来自Mac的简单示例,可能对您有所帮助 我的目录中的文件列表: $ ls *.java Child.java

我在Mac上工作,使用xcode保存我的java文件。我有一个文件在netbeans中运行时没有错误。该文件在作为子类的同一文件夹中有另一个文件。当我在终端中运行文件时,我怀疑子类文件没有运行,因为出现了多个找不到符号错误。你知道为什么吗?我使用cd命令调用该文件,直到到达包含这些文件的文件夹。然后我使用(javac-classpath“filename.java”)来运行该文件。

这是一个来自Mac的简单示例,可能对您有所帮助

我的目录中的文件列表:

$ ls *.java
Child.java   Driver.java  Parent.java
显示所有三个文件的内容:

$ cat *.java
// file Child.java
public class Child extends Parent {
    public Child() {
        System.out.println("  I'm the Child...");
    }
}

// file Driver.java
public class Driver {
    public static void main(String[] args) {
        Parent parent = new Parent();
        parent.hello();
        Child child = new Child();
    }
}

// file Parent.java
public class Parent {
    public Parent() {
    }
    public void hello() {
        System.out.println("Hello from the parent.");
    }
}
将所有3个Java源文件编译为字节码:

$ javac *.java
调用Java VM以执行主入口点:

$ java Driver
Hello from the parent.
  I'm the Child...

javac-classpath“filename.java”
不“运行”java文件。它调用编译器。检查类路径。可能会有帮助。我需要ls命令来至少显示两个文件都已加载。我需要看一下终端的命令列表。编译该文件时,我注意到该文件使用未经检查或不安全的操作,我不理解这一点,因为Netbeans没有问题。要求使用-Xlint重新编译。更进一步,尝试调用java VM,但返回一个找不到或无法加载主类驱动程序。您是否尝试使用Xlint编译以查看它的说明?它应该看起来像“$javac-Xlint*.java”。我现在正在看它,想了解它的头绪或故事。TotalComp.java:49:警告:[rawtypes]找到原始类型:ArrayList ArrayList al1=新ArrayList();^泛型类ArrayList缺少类型参数,其中E是类型变量:E扩展类ArrayList中声明的对象