繁体   English   中英

尝试从命令行编译Java时收到错误

[英]Receiving errors when trying compile Java from command line

我试图让自己摆脱IDE的束缚-成为一名程序员时变得懒惰。 发布之前,我查看了这些网站,但并没有帮助:

从命令行编译Java时出错 从命令行 Javac“找不到符号”中 编译Java http://www.javaprogrammingforums.com/java-ides/16906-trouble-running-java-file-windows-command-prompt.html# post71916

我的源文件有以下路径:

d:\\工作区\\ HelloWorld的\\ SRC \\ COM \\ dogzilla

该路径中有两个文件:Start.java ...

package com.dogzilla;

public class Start{

    public Start() {

    }

    private static final String S = "Hello World";

    public static void main(String[] args) {

        HelloWorld hw = new HelloWorld();
        hw.printHelloWorld(S);
    }

}

...和HelloWorld.java

package com.dogzilla;

public class HelloWorld {

    public HelloWorld() {
    }

    public void printHelloWorld(String s){
        System.out.println(s);
    }

}

当我将目录更改为D:\\workspace\\HelloWorld\\com\\dogzilla\\src\\main\\java并运行javac Start.java ,它出现以下错误:

Start.java:14: error: cannot find symbol
        HelloWorld hw = new HelloWorld();
        ^
  symbol:   class HelloWorld
  location: class Start
Start.java:14: error: cannot find symbol
        HelloWorld hw = new HelloWorld();
                            ^
  symbol:   class HelloWorld
  location: class Start
2 errors

因此,我读过您必须指定类路径,因为package com.dogzilla; 线。

所以我将目录更改为D:\\workspace\\HelloWorld并运行javac -cp com\\dogzilla\\src\\main\\java\\Start.java (有趣的是,Tab键完成了路径,所以我知道命令提示符正在查找Start。 Java就好了)它的错误:

javac: no source files
Usage: javac <options> <source files>
use -help for a list of possible options

如何编译和运行此本来简单的程序? IDE否则将其隐藏,我在学习它时遇到了问题。

您要做的第一件事是将Java代码编译成类文件。 为此使用javac命令。

您可以在任何地方运行此命令,只要捕获所有必须编译的Java文件即可。

这将起作用:

[D:\workspace\HelloWorld\src]> javac com\dogzilla\*.java

这也将起作用:

[D:\workspace\HelloWorld\src\com\dogzilla] java Start.java HelloWorld.java

要运行编译后的代码,请使用java命令。 您必须使用主类的完全限定名称,因此您必须位于根源目录中。

[D:\workspace\HelloWorld\src]> java com.dogzilla.Start

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM