java.exe似乎无法在当前工作目录中找到.java文件

时间:2018-05-24 20:47:35

标签: java eclipse runtime-error

我在Windows 10上安装了Java。它安装在这里:C:\Program Files\Java\jdk-10.0.1。我确保修改了路径以包含bin文件夹和java.exe。我可以在cmd窗口中输入'java'并获取java用法消息。所以,这是有效的。

然后我安装了Eclipse。我通过教程部分walkthru来创建HelloWorld程序。它运行在Eclipse中。这是:

public class HelloWorld {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        System.out.println("Hello World!");
    }

}

现在我已经正确设置了,我想尝试在没有Eclipse的情况下运行它。因此,我将HelloWorld.java源文件从Eclipse工作空间复制到我在Documents,C:\Users\kris4\Documents\java下创建的文件夹。

我打开一个cmd窗口,cd到C:\Users\kris4\Documents\java,然后执行dir

Volume in drive C has no label.
 Volume Serial Number is A656-1FA0

 Directory of C:\Users\kris4\Documents\java

05/24/2018  03:22 PM    <DIR>          .
05/24/2018  03:22 PM    <DIR>          ..
05/24/2018  11:20 AM               160 HelloWorld.java
               1 File(s)            160 bytes
               2 Dir(s)  116,141,473,792 bytes free

在那里......

但是,当我执行时,java HelloWorld.java我明白了:

Error: Could not find or load main class HelloWorld.java
Caused by: java.lang.ClassNotFoundException: HelloWorld.java

该文件位于工作目录中,该文件是正在运行的Eclipse工作区文件的副本。 WTH!在互联网上看,我认为java需要CLASSPATH才能找到源代码,因此我将变量CLASSPATH定义为HelloWorld.java所在的目录。仍然没有运气。

显然,对于这个新手,我在cmdline环境中缺少一些应该存在的基本内容,但老实说,我希望java.exe在当前工作目录中查找作为参数给出的文件,像任何其他程序一样。

你们其中一个人可以帮助我吗?

1 个答案:

答案 0 :(得分:0)

使用:

const path = require('path');
app.get('/helpPage.html', (req, res)=>{
    res.sendFile( path.join(__dirname, '/public/helpPage.html') );
});

不仅仅是

javac HelloWorld.java