一、问题描述:
在IntelliJ idea中编写java代码,需要向主函数传递参数,所以不能直接点绿色按钮直接运行程序。此时,想到使用terminal中的命令行手动编译并执行程序,编译成功后(javac helloworld.java),找到helloworld.class,在其所在的文件夹下,执行命令java helloworld 后,出现 错误: 找不到或无法加载主类 helloworld ,查找了很多博客,但是全部在说环境变量的问题。
二、解决步骤:
接下来检查jdk的环境变量,并通过windows10 的cmd 编译并执行一个D盘下测试用的java程序,编译成功并且可以执行,证明环境变量没有问题。
将IntelliJ idea 下的helloworld.java COPY到D盘下,用cmd编译执行,出现上述错误,然后将程序中的“package quickstart”(代码所在的包)删掉,在cmd下编译执行,得到了正确的输出。
在知乎上得到了想要的答案。编译时,应该在helloworld.java所在文件夹下,但是执行需要在不能直接进入到helloworld.class所在文件夹下,而是应该在“quickstart”(包)的上一层目录下执行java quickstart.helloworld,搞定。