java包不存在,源文件不正确

pw136qt2  于 2021-07-09  发布在  Java
关注(0)|答案(2)|浏览(255)

所以我创建了一个名为util的文件夹,并在其中放置了四个类以及名为unit10assignment的程序。我创建了一个package util并键入“package util;”在每个类的顶部,代码如下:

package util;

public class Employee

然后我写道:

import util.*;
import javax.swing.JOptionPane;

public class unit10Assignment

最重要的是。但是当我编译它时,它告诉我。有人知道为什么吗?我试着玩弄它,当我输入import java.util*时,它就消失了;相反,我不确定我的老师想要的例子是不是前面没有java。
它还说“坏源文件”“包不包含类employee”,但是,在我键入package语句之前,所有的东西都编译并运行得很好,从那时起我就没有对代码做任何更改。如果我从employee类tho中删除了package语句,则会出现相同的消息,但会说另一个类不存在。
感谢您的帮助注意:无论我是使用java.util还是仅仅使用util,这个错误源代码的问题仍然会出现。
谢谢你的帮助

kgqe7b3p

kgqe7b3p1#

我假设你的项目是这样设置的:

util/
    Employee.java
    unit10Assignment.java
bin/

(如果不是,那没关系-只要它们在某个文件夹中。 bin/ 但应该存在。)
包的工作方式是它们是硬盘上的文件夹—要导入的包要求要导入的文件夹和类都存在于该特定文件夹中。这就是为什么包很方便的原因-您可以有两个名为 Employee 让他们住在完全不同的地方*
下面是如何在不使用ide的情况下将它们编译成类似包的结构。用$home替换java类文件夹的完整路径。

javac -sourcepath $HOME/util -d $HOME/bin *.java

下面是你的主要课程:

java -cp $HOME/bin util.$MAIN_CLASS

这些旗子的具体含义: -sourcepath 指示javac在这个特定目录中查找源文件。 -d 指定.class文件的输出目录。 -cp 指示java将此文件夹添加到其类路径。

  • :非常非常大的项目通常可以使用与其他类相同的名称;如果您想使用一个特定的类,就必须为它使用完全限定的类名。
rryofs0p

rryofs0p2#

确保:
文件名与类名匹配(例如。 Employee.java 为了班级 Employee )
根据文件包(即。 util )
你在用ide吗?如果不是,使用一个realy对这类事情有很大帮助。

相关问题