我创建一个使用数据库的程序,在 IntelliJ IDEA 中编译时出现以下错误。有人知道为什么会发生这种情况以及我该如何解决它吗?
您收到的错误不是在编译时发生的,而是在您尝试运行应用程序时发生的。发生这种情况是因为 Java 无法找到Table.class
里面的文件db
项目输出目录(类路径)的子目录。
发生这种情况的原因有多种:
- 主类错误在运行/调试配置中选择 https://i.stack.imgur.com/U6pVW.png
-
Table.java
被排除在编译之外 https://stackoverflow.com/a/11055250/104891(意外或故意,因为它包含错误,并且您想在处理其他代码时跳过它)
- 类未编译,因为Build step 被排除在外 https://i.stack.imgur.com/75iBA.png来自运行/调试配置中的启动步骤之前
- 项目配置错误,没有源根 为目录定义 https://www.jetbrains.com/help/idea/2016.3/configuring-content-roots.html含有
db
子目录
-
Table.java
有不正确的package
声明或位于/移动到不同的包
- 项目路径包含冒号
:
在 Mac/Linux 或分号上;
在 Windows 上,它用于分隔类路径,并使类路径无效。看这个线程 https://intellij-support.jetbrains.com/hc/en-us/community/posts/115000453544-IntelliJ-throwing-the-same-error了解详情。请注意,Mac 上的 Finder 可能会将路径中的冒号显示为斜杠。
- 如果依赖 jar 之一经过数字签名,则该 jar 可能无法执行,因为新工件将包含依赖项的部分签名。看这个答案 https://stackoverflow.com/a/45169655/104891更多细节。
- 在项目结构中,确保您有正确的 Java 版本进行编译。
- 有一个已知错误 https://youtrack.jetbrains.com/issue/IDEA-184561有时,一个 Java 项目是从命令行模板不起作用,因为
.idea/modules.xml
文件引用名为的无效模块文件untitled104.iml
。手动修复模块名称或从头开始创建项目并且不使用模板。
- 在 Windows 上,“Beta:使用 Unicode UTF-8 实现全球语言支持”区域设置已启用。看IDEA-247837 https://youtrack.jetbrains.com/issue/IDEA-247837了解更多详细信息和解决方法。
- 当 IntelliJ IDEA 配置为以 Eclipse 格式存储模块依赖项时,源根配置会由于以下原因丢失:已知错误 https://youtrack.jetbrains.com/issue/IDEA-264135。配置模块以使用 IntelliJ IDEA 格式依赖项作为解决方法。
在正确配置的项目中,并使用正确的运行/调试配置,一切正常:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)