当前位置: 首页 > 知识库问答 >
问题:

Java NoClassDefFound尝试运行时出错

张建华
2023-03-14

我对在java中使用包相当陌生,但我有一个文件结构:

  • 项目
  • com

      • Billing.java
      • Password.java

      每个java文件都有包src。com。主要 位于顶部。我正在使用javac-d从项目文件夹进行编译/类别//src/com/main/*。java,它编译得很好。当我使用java类/src/com/main/Billing来运行它时,is给了我一个NoClassDefFound异常。我做错了什么?

      编辑:整个错误:
      java类/src/com/main/BillingException在线程“main”java中。lang.NoClassDefFoundError:classes/src/com/main/Billing(错误名称:src/com/main/Billing)。lang.ClassLoader。在java中定义Class1(本机方法)。lang.ClassLoader。java上的defineClass(ClassLoader.java:800)。安全SecureClassLoader。java上的defineClass(SecureClassLoader.java:142)。网URLClassLoader。java上的defineClass(URLClassLoader.java:449)。网URLClassLoader。在java上访问100美元(URLClassLoader.java:71)。网URLClassLoader 1美元。在java上运行(URLClassLoader.java:361)。网URLClassLoader 1美元。在java上运行(URLClassLoader.java:355)。安全AccessController。java上的doPrivileged(本机方法)。网URLClassLoader。java上的findClass(URLClassLoader.java:354)。lang.ClassLoader。sun的loadClass(ClassLoader.java:425)。杂项。启动器$AppClassLoader。java上的loadClass(Launcher.java:308)。lang.ClassLoader。sun的loadClass(ClassLoader.java:358)。启动器。LauncherHelper。checkAndLoadMain(LauncherHelper.java:482)


共有3个答案

孟财
2023-03-14

我认为您可以在类中使用其他包或jar文件上的其他类,如果是这样的话!您需要定义类路径以使java能够找到依赖项。

丰飞龙
2023-03-14

类文件不在类路径中,可能是这样。

如果您使用的是maven和eclipse,请尝试使用命令mvn eclipse:eclipse或

您还可以在命令提示符下设置类路径。类文件位于。

例如:

C:

翁宏茂
2023-03-14

尝试

cd project/classes/
java -cp . src.com.main.Billing
 类似资料:
  • 我跟着教程上了课 https://developer.atlassian.com/server/framework/atlassian-sdk/create-a-confluence-hello-world-macro/ 但当我尝试运行atlas并打开localhost:1990/confluence时,我得到了一个404错误。 我已经多次检查了我的java和sdk版本。Atlas 6.3.10

  • 我正在尝试配置一个Laravel项目,我已经配置了node和bower,没有问题,但在sudo npm安装gulp之后。当我运行gulp时,我得到了这个错误 单元js:341投掷错误^ 错误:找不到模块'laravel-elixir'在函数。模块。_resolveFilename(module.js:339: 15)在函数。模块。_load(module.js:290: 25)在Module.re

  • 文件"C:\Program Data\Anaconda3\Script\tensorboard-script.py",第10行,sys.exit(run_main())文件"C:\Program Data\Anaconda3\lib\site-包\拉伸板\main.py",第57行,run_mainapp.run(tensorboard.main,flags_parser=tensorboard.

  • Docker-compose.yml文件: 当尝试运行docker compose up时,我遇到了一个错误:我的docker Close版本是2.1.1 我得到了这个错误得到权限拒绝,而试图连接到Docker守护套接字unix://var/run/docker.sock:获取"超文本传输协议:///var/run/docker.sock/v1.24/containers/json?all=1

  • 当我尝试运行一个简单的JUnit 5测试(eclipse)时,我遇到了以下错误: 这是我的: 我尝试过类似问题的一些建议,比如这个github问题和其他问题,但是没有成功。我还在学习JUnit,所以我可能会忘记一些显而易见的东西。

  • 我是Grails的新手,我用GVM工具安装了它,并试图从终端运行一个默认应用程序,只需尝试以下命令:Grails create-app demo和Grails run-app,我得到了一个巨大的错误: 编辑:问题解决了,只需升级JDK版本。