Java程序可在主机上的终端上运行,但在将项目目录同步到VM后无法正常运行

问题描述

我有一个很小的程序,里面只有一个java文件,里面有main方法。我通过javac Program.javajava Program.java在Ubuntu终端中测试了该程序,一切都很好。然后,我使用rsync将项目目录发送到在VM中运行的FreeBSD。在那里我做了javac Program.java,但是当我运行java Program.java时却找不到主要的。这是一些CLAsspATH的东西-我需要在VM机器上的JDK中进行配置吗?

hk222su@freebsd-vm-group25:/home/hk222su % ls
groupAssignment1    Program.class       Program.java        Received
hk222su@freebsd-vm-group25:/home/hk222su % rm Program.class Program.java 
hk222su@freebsd-vm-group25:/home/hk222su % ls
groupAssignment1    Received
hk222su@freebsd-vm-group25:/home/hk222su % cd groupAssignment1 
hk222su@freebsd-vm-group25:/home/hk222su/groupAssignment1 % ls
1dv512_group25_assignment1.iml  out             screenshots         some_notes          src
hk222su@freebsd-vm-group25:/home/hk222su/groupAssignment1 % cd src
hk222su@freebsd-vm-group25:/home/hk222su/groupAssignment1/src % ls
Program.class   Program.java
hk222su@freebsd-vm-group25:/home/hk222su/groupAssignment1/src % javac Program.java 
hk222su@freebsd-vm-group25:/home/hk222su/groupAssignment1/src % java Program.java
Error: Could not find or load main class Program.java
hk222su@freebsd-vm-group25:/home/hk222su/groupAssignment1/src % java Program.java
Error: Could not find or load main class Program.java
hk222su@freebsd-vm-group25:/home/hk222su/groupAssignment1/src % javac Program.java
hk222su@freebsd-vm-group25:/home/hk222su/groupAssignment1/src % java Program.java 
Error: Could not find or load main class Program.java
hk222su@freebsd-vm-group25:/home/hk222su/groupAssignment1/src % 


解决方法

运行编译后的程序时,使用

java Program

代替

java Program.java