当前位置: 首页 > 面试题库 >

声明的软件包与预期的软件包“”不符

穆鸿飞
2023-03-14
问题内容

我正在使用Eclipse,并且有一段时间没有使用Java了。但是,我可以在命令行上编译我的代码,并生成必要的.class文件。在Eclipse中,它抱怨The declared package "Devices" does not match the expected package ""。这是什么意思,我该如何解决?

样例代码:

package Devices;

public final class DevFrequency 
{
    public short messageID;
    public double frequency;
    public short converterID;
    public DevFrequency() 
    {
    }
    public DevFrequency(short _messageID,double _frequency,short _converterID)
    {
        messageID = _messageID;
        frequency = _frequency;
        converterID = _converterID;
    }
}

我的项目的名称是DeviceDDS


问题答案:

Eclipse希望声明的包与目录层次结构匹配-因此,它希望Java文件位于源根目录下的“
Devices”目录中。目前,该文件似乎直接位于您的源根目录中。因此,创建适当的目录,然后将文件移到该目录中。

请注意,通常,软件包使用小写字母,并以反向DNS顺序包含您的组织名称,例如

com.foo.devices;


 类似资料:
  • 问题内容: 在Java中,为什么每个类都必须声明其所属的包。我的意思是,已经使用文件系统的文件夹结构描述/强制使用了软件包hierachy。在我看来,该行: 作为每个类的第一行,都是多余的信息。但我很确定有充分的理由让它存在。 问题答案: 我的意思是,已经使用文件系统的文件夹结构描述/强制使用了软件包hierachy。 不必要。虽然以这种方式组织代码当然是一个好主意,但这不是必需的。还请记住,源代

  • 虽然不能定做,但依然有许多人会去吃麦当劳,因为麦当劳的汉堡符合大多数人的口味;同样,预编译软件包也可以满足大多数用户的需求,如果没有特殊需求,很少有人会选择编译软件 最早的软件包管理系统不支持网络,类似于在 Windows 下安装软件,你必须获取一个安装包(比如通过网络下载),然后在本地安装它。使用这种方式安装软件的包管理系统主要有:dpkg(debian系)、rpm(redhat系) 由于 Li

  • Tazpkg - 软件包管理器 Slitaz提供一个小型软件包管理器,它能轻易在系统里安装许多软件。Tazpkg是一个由SHell脚本写的轻量级的软件包管理器,能安 装.tazpkg文件。它能在Busybox、ash shell和bash中正常运行。Tazpkg可以让你列出软件包列表、安装软件包、删除软件包、下载软件包、解压软件包、打包软件包、查找软件包或者取 得有关可用软件包或所有已安装软件包的

  • 2.a. 获取软件包信息 工具之王者: emerge Portage 工具中用户用得最多的便是 emerge. 我们在安装 Gentoo 的时候以及前面的一些章节里都用过它了, 不过当时我们仅仅简单地介绍了一些用法. 本章将为您细述如何使用 emerge 以及如何以它来满足您软件相关的需求. emerge 是一个用以安装, 卸载, 查询以及维护软件的命令. 它是 ebuild 的一个前端 (fro

  • 主要内容:Linux源码包,Linux二进制包,源码包 VS RPM二进制包,如何选择Linux下的软件包众多,且几乎都是经 GPL 授权、免费开源(无偿公开源代码)的。这意味着如果你具备修改软件源代码的能力,只要你愿意,可以随意修改。 GPL,全称 General Public License,中文名称“通用性公开许可证”,简单理解 GPL 就是一个保护软件自由的一个协议,经 GPL 协议授权的软件必须开源,请猛击《开源协议》了解更多信息。 Linux下的软件包可细分为两种,分别

  • 0.10 新版功能. Scrapinghub 发布的apt-get可获取版本通常比Ubuntu里更新,并且在比 Github 仓库 (master & stable branches) 稳定的同时还包括了最新的漏洞修复。 用法: 把Scrapy签名的GPG密钥添加到APT的钥匙环中: sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:8