首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何用IntelliJ编译Java工程并在终端运行(NoClassDefFoundError)

如何用IntelliJ编译Java工程并在终端运行(NoClassDefFoundError)
EN

Stack Overflow用户
提问于 2018-09-22 21:39:01
回答 1查看 93关注 0票数 1

我喜欢IntelliJ,因为它的易用性和强大的集成开发环境功能。但是,由于我的项目的性质,我希望在IntelliJ中构建完所有内容后,通过终端运行相关的.class文件。我的结构看起来像这样:

代码语言:javascript
复制
out/
|
|-production/
|  |
|  |-AILab2/
|     |
|     |-TTT/
|     |  |--Main.class
|     |  |--Constants.class
|     |  |--Deadline.class
|     |  |--pipe|
|     |  |--etc...
|     |
|     |-TTT3
|        |--Constants.class
|        |--Deadline.class
|        |--etc...
src
|
|-TTT
|  |--Main.java
|  |--Constants.java
|  |--Deadline.java
|  |--etc...
|
|-TTT3
   |--Constants.java
   |--Deadline.java
   |--etc...

当我进入终端运行时,我执行以下操作:

代码语言:javascript
复制
~/IdeaProjects/AILab2/out/production/AILab2/TTT$ java Main init verbose < pipe | java Main > pipe
Error: Could not find or load main class Main
Caused by: java.lang.NoClassDefFoundError: TTT/Main (wrong name: Main)
Error: Could not find or load main class Main
Caused by: java.lang.NoClassDefFoundError: TTT/Main (wrong name: Main)

我已经在网上搜索过了,我不明白这个错误的原因。我以前的项目也是这样运行的,但这一次,它不起作用。感谢你的帮助。

编辑:更改终端命令以包含TTT会导致相同的消息:

代码语言:javascript
复制
$ java TTT.Main init verbose < pipe | java TTT.Main > pipe
Error: Could not find or load main class TTT.Main
Caused by: java.lang.ClassNotFoundException: TTT.Main
Error: Could not find or load main class TTT.Main
Caused by: java.lang.ClassNotFoundException: TTT.Main
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52457194

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档