我有一个包含10个.java文件的java项目。 A1.java,A2.java ...... A9.java和Main.java。我必须在UNIX环境中构建并运行该项目。所有10个.java文件都位于grand.big.medium.small包中。 要编译java文件,我进入grand / big / medium / small文件夹并输入命令:
javac *.java
所有文件都被编译,所有.class文件都在当前文件夹中创建,同时,我收到以下消息:
Note: A4.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: A4.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
现在我运行Main.class键入:
java -classpath . Main
我收到错误消息:
Error: Could not find or load main class Main
我是Unix的新手,对此并不了解,有谁能说出我做错了什么。 刚添加,我已经安装了3个java版本
Selection Path Priority Status
------------------------------------------------------------
0 /usr/lib/jvm/java-8-oracle/jre/bin/java 1072 auto mode
1 /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java 1061 manual mode
2 /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java 1071 manual mode
* 3 /usr/lib/jvm/java-8-oracle/jre/bin/java 1072 manual mode
Press enter to keep the current choice[*], or type selection number:
我正在使用Java 8.
答案 0 :(得分:4)
编译后,向上移动到包含程序包根目录的文件夹(grand
给定grand.big.medium.small
),然后使用
java -cp . grand.big.medium.small.Main
答案 1 :(得分:0)
使用正确的类路径和完全限定的主类,如下所示:
java -classpath ../../..:. grand.big.medium.small.Main