我的程序是package pl.edu.uj.tcs.crazySocket;
由于一些要求。我在 crazySocket 目录中工作。为了编译程序,我使用命令
CLASSPATH=~/prog/colosseum/data javac tictactoe.java
这成功了。我想运行程序。我将 javac 更改为 java 并删除了“.java”。我明白了
Exception in thread "main" java.lang.NoClassDefFoundError: tictactoe
Caused by: java.lang.ClassNotFoundException: tictactoe
at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
当我在树目录中起床到 ~/prog/colosseum/data 并运行java pl/edu/uj/tcs/crazySocket/tictactoe
一切正常。
CLASSPATH 有什么问题?它不应该同时适用于 javac 和 java 吗?