【问题标题】:How to run a package that contains different public classes?如何运行包含不同公共类的包?
【发布时间】:2021-11-09 16:49:18
【问题描述】:

我创建了一个名为 com.choice 的包。它包含三个文件:

  • ShopApp:这是一个包含main方法的公共类
  • Customer:公开课
  • Clothing:公开课

我已经使用javac *.java编译了整个包,这已经编译成功,但是当我运行它时,我得到一个java.lang.ClassNotFoundException

【问题讨论】:

  • 你用什么命令来运行它的?
  • 我相信缺少一些信息以便有人能够(适当地)帮助您: 1. 您是如何运行程序的? 2.ClassNotFoundException是哪个班级的? (使用该信息编辑您的答案,使其不会隐藏在 cmets 中)
  • 尝试了以下多种方式 - F:\ com.choice>java ShopApp 和另一个 - F:\com.choice>java com\choice\ShopApp
  • ShopApp 有 main 方法,这就是为什么我使用这个类来运行

标签: java package


【解决方案1】:

假设这个文件夹结构

E:\
 |-- Choice
     |-- com
         |-- choice
             |-- ShopApp.java
             |-- Customer.java
             |-- Clothing.java

您的源文件应具有以下包名:

package com.choice

然后你做:

cd E:\Choice
javac com\choice\ShopApp.java com\choice\Customer.java com\choice\Clothing.java

然后运行

 cd E:\Choice
 java com.choice.ShopApp

请注意 java 名称区分大小写,因此请遵循在包名称及其对应目录中不使用大写字母的约定。在这个例子中,目录Choice 是一个项目根目录,可以随便调用它,它不被 java 使用,但它是你执行命令的地方。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-03-07
    • 2023-03-16
    • 2012-07-17
    • 1970-01-01
    • 2014-07-10
    • 2012-03-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多