无法运行简单的java代码

无法运行简单的java代码,java,compilation,Java,Compilation,我已经下载了一个适用于64位windows 7的java开发者工具包,在记事本中写下了我的代码,尽管代码是从命令提示符编译并创建了一个.class文件,但它拒绝运行,显示错误代码: java.lang.NoClassDefFoundError: first Caused by: java.lang.ClassNotFoundException: first at java.net.URLClassLoader$1.run(Unknown Source) at java.sec

我已经下载了一个适用于64位windows 7的java开发者工具包,在记事本中写下了我的代码,尽管代码是从命令提示符编译并创建了一个.class文件,但它拒绝运行,显示错误代码:

java.lang.NoClassDefFoundError: first Caused by: java.lang.ClassNotFoundException: first   
  at java.net.URLClassLoader$1.run(Unknown Source)   
  at java.security.AccessController.doPrivileged(Native Method)   
  at java.net.URLClassLoader.findClass(Unknown Source)   
  at java.lang.ClassLoader.loadClass(Unknown Source)   
  at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)   
  at java.lang.ClassLoader.loadClass(Unknown Source) 
Could not find the main class: first.  Program will exit. Exception in thread "main"

我不止一次地确保文件名和类名完全相同(为了确保这一点,我将它们保留为小写字母“a”)。但是仍然没有用,请你提出一些解决方案好吗。。我是java新手,基本上是C/C++程序员。

java程序有以下基本结构:

ClassName.java

public class ClassName
{
    public static void main(String[] args)
    {

    }
}
尝试使用此大纲生成代码

编译并运行:

javac ClassName.java
java ClassName

您必须提供代码

无论如何,从Java文档中:

当应用程序试图 通过类的字符串加载类 名称使用:

  • 类中的
    forName
    方法
  • 类加载器中的
    查找系统类
    方法
  • 类加载器中的
    loadClass
    方法
但没有指定名称的类的定义 可以找到


必须阅读链接:

我在运行类文件时经常遇到此错误

尝试执行:
java类的名称


运行时不需要
.java
扩展,但编译时需要它。这一直是我以前遇到的问题。

您设置了类路径吗

java-classpath

编译代码后,您很可能正在编写
java filename.java
。 因为这样的例外情况就会发生

使用
javac filename.java
编译程序后,使用命令启动解释器
java filename

当您输入此命令时,java解释器自动开始解释
filename.class

命令:

javac filename.java   // to start compiling
java filename         // to start interpreting

嗨,你能在这里提供你的源代码吗?我假设你试图从命令行运行你的Java程序——你能和我们分享你正在运行的吗?执行的命令是什么?您是否使用“java-jaryourclass.jar”?你拿到jar文件了吗?@Ron:欢迎来到Java!注意,与C++不同,java有一个很强的约定,类名以大写字母开头,因此您应该将类重命名为第一个(而不是第一个)。请注意,这只是一种约定,并不能解决您的问题。重复上述内容,请提供您用于运行java的命令行。问题似乎是java没有在其类路径(它搜索的目录列表)上找到您编译的类。类文件如果程序编译正确,问
您设置了类路径了吗?
javac filename.java   // to start compiling
java filename         // to start interpreting