You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Java程序编译失败求助:为何提示freshjuice.FreshJuice类无主方法?

问题分析与解决方案

嘿,我来帮你搞定这个问题~

首先咱们拆解下错误提示:Error: Main method not found in class freshjuice.FreshJuice,这个错误的核心原因是你尝试运行的是FreshJuice类,但这个类里并没有程序入口必需的main方法。

你的代码结构梳理

你的代码里包含两个类:

  • FreshJuice:这个类定义了枚举和成员变量,但没有main方法,不能作为程序的入口类。
  • public class FreshJuiceTest:这个类里才包含程序运行需要的main方法,是真正的入口类。

另外要注意Java的硬性规则:public类的文件名必须和类名完全一致,所以你的源文件必须命名为FreshJuiceTest.java,否则编译阶段就会先报错。

正确的编译&运行步骤

  1. 命名源文件:确保你的源文件名为FreshJuiceTest.java(和public类名完全匹配)。
  2. 编译代码:打开命令行,进入源文件所在目录,执行编译命令:
    javac FreshJuiceTest.java
    
    执行后会生成freshjuice文件夹,里面包含FreshJuice.class和FreshJuiceTest.class两个编译后的文件。
  3. 运行程序:执行运行命令,指定入口类的完整包路径:
    java freshjuice.FreshJuiceTest
    
    这样程序就能正常执行,输出Size: MEDIUM啦。

额外小提示

如果想让FreshJuice类直接作为入口类,你可以把main方法移到FreshJuice类里,同时把源文件名改成FreshJuice.java(如果将FreshJuice设为public类的话)。不过目前你把测试逻辑放在单独的FreshJuiceTest类里的结构更合理,推荐保持这个结构哦。

内容的提问来源于stack exchange,提问作者Duron Weathington

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 03:57:54