命令行编译运行Java文件
程序员文章站
2022-05-20 18:28:02
...
学习Java也有一段时间了,从刚开始就用Eclipse,对命令行编译运行java文件就忽略了。先上代码:HelloWorld.java
以前一直以为在命令行下使用javac命令编译java文件,必须和源文件名一致(包括大小写)。我用的是win8的32位系统。但是当我在命令行下输入
javac helloworld.java
回车,编译通过了,产生了class文件。百度了一下,大概就是说这是因为windows系统的文件不分大小写(如有错误,请各位看官指正)。接下来就是运行该程序了。按照书上的提示,键入
java helloHelloWorld.javaworld
错误来了:
Exception in thread "main" java.lang.NOClassDefFoundErr:helloworld(wrong name:test\HelloWorld)
让我大吃一惊,居然说没有定义。不知道为何java命令就要分大小写了(疑惑?以前上课我都在干什么!!!)。好吧,那我就重新键入
java HelloWorld
我又大吃了一惊(我都快吃饱了)。报的错和前一个一模一样。源文件我是放在E盘根目录下的。网上说这是因为路径错误所致。于是,我很偷懒地在E盘根目录下新建了一个test文件夹,把源文件放入其中,重新编译,然后在执行
java test.HelloWorld(这个过程我还不太明白,希望懂得能给讲解一下。)
得到了正确的输出。
package test; public class HelloWorld { public static void main(String[] args) { System.out.println("HelloWorld"); } }
以前一直以为在命令行下使用javac命令编译java文件,必须和源文件名一致(包括大小写)。我用的是win8的32位系统。但是当我在命令行下输入
javac helloworld.java
回车,编译通过了,产生了class文件。百度了一下,大概就是说这是因为windows系统的文件不分大小写(如有错误,请各位看官指正)。接下来就是运行该程序了。按照书上的提示,键入
java helloHelloWorld.javaworld
错误来了:
Exception in thread "main" java.lang.NOClassDefFoundErr:helloworld(wrong name:test\HelloWorld)
让我大吃一惊,居然说没有定义。不知道为何java命令就要分大小写了(疑惑?以前上课我都在干什么!!!)。好吧,那我就重新键入
java HelloWorld
我又大吃了一惊(我都快吃饱了)。报的错和前一个一模一样。源文件我是放在E盘根目录下的。网上说这是因为路径错误所致。于是,我很偷懒地在E盘根目录下新建了一个test文件夹,把源文件放入其中,重新编译,然后在执行
java test.HelloWorld(这个过程我还不太明白,希望懂得能给讲解一下。)
得到了正确的输出。
上一篇: 为Linux新增静态路由以便用户手工配置
推荐阅读
-
树莓派编程用什么语言(树莓派运行和编译Java程序)
-
VS.net VSS时,编译报错:未能向文件“.csproj.FileListAbsolute.txt”写入命令行 对路径 的访问被拒绝。
-
出现 “java”不是内部或外部命令,也不是可运行程序或批处理文件的问题
-
PowerShell或命令行运行javac xx.java提示“编码GBK的不可映射字符”
-
java环境变量配置好后双击jar文件无法运行的解决办法
-
【Java】Class文件编译的版本号与JDK版本号的对应关系
-
C++和Java从编译到运行的过程区别
-
IDEA不编译除了.java之外的文件的解决办法(推荐)
-
手动编译并运行Java项目实现过程解析
-
Java目录下文件夹的含义和运行机制