我在 Intellij IDEA 中编写了一个程序。它在 IDE 中运行良好,但我在命令行中遇到了问题(我很少从命令行运行我自己的,我想我只是错过了一个步骤。)所以这就是问题所在。如果我导航到我的文件所在的位置:
cd averageAmpCov/src/
然后运行我的程序它工作正常:
java averageAmpCov
Error: Parameter 'out' is required.
Error: Parameter 'in' is required.
Usage: java averageAmpCov
(-o|--outputlocation) <out> (-i|--inputlocation) <in>
(-o|--outputlocation) <out>
Where is the input file to be put? Full path and desired file name
(-i|--inputlocation) <in>
但是当我尝试从这样的文件夹外部运行时:
java averageAmpCov/src/averageAmpCov
我收到一个可悲的错误:
Exception in thread "main" java.lang.NoClassDefFoundError: averageAmpCov/src/averageAmpCov (wrong name: averageAmpCov)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:792)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:482)
其他一些帖子说这可能是一个类路径问题,但我真的不明白该怎么做。我在这里做错了什么?