名称中带有点的 Java 包文件夹

2023-12-08

是否按照规范,给定MyClass.java文件包含

package com.mycorp.foo;

public class MyClass {
  public static void main (String[] args) {
    System.out.println("Hello, world!");
  }
}

在以下路径中(注意文件夹名称中的点):

./com/mycorp.foo/MyClass.java

以下工作正常:

$ javac com/mycorp.foo/MyClass.java

生产./com/mycorp.foo/MyClass.class虽然这不起作用:

$ java com.mycorp.foo.MyClass 
Exception in thread "main" java.lang.NoClassDefFoundError: com/mycorp/foo/MyClass
Caused by: java.lang.ClassNotFoundException: com.mycorp.foo.MyClass
    at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:247)

类文件顶部提到的打包结构与编译关系不大以及更多相关内容运行时类加载.

  1. 您可以输入任何包名并编译它。例如下面的java类编译

    package com.sa.test.me.yes.no;
    
     public class Test{
    
     public static void main(String[] args){
    
     System.out.println("Hello");
     }
    
      }
    

它编译即使你没有放入文件夹结构中与包声明相同。您可以通过不放入任何文件夹来测试它(例如java Test.java)

2.包的组织在类加载时更为重要。这类加载器总是会搜索类进入基于包结构的文件夹。因此,当您尝试运行程序时,类加载器会尝试根据包结构在文件夹中搜索类文件。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

名称中带有点的 Java 包文件夹 的相关文章

随机推荐

  • 这是否需要显式同步?

    我有两个线程 我想确保我在 LinkedBlockingQueue 上正确执行同步 这是正确的吗 或者 messageToCommsQueue 上的显式同步不需要吗 宣言 private LinkedBlockingQueue
  • 使用 python 2.5 将 zip 文件下载到本地驱动器并将所有文件解压到目标文件夹

    我正在尝试将 zip 文件下载到本地驱动器并将所有文件提取到目标文件夹 所以我想出了解决方案 但它只是将文件从一个目录 下载 到另一个目录 但它不适用于下载文件 对于提取 我可以让它在 2 6 中工作 但不能在 2 5 中工作 因此 我绝对
  • 错误:“stod”未在此范围内声明

    我正在开发一个 C 项目 我需要将字符串转换为双精度数 但我不断收到错误 stod 未在此范围内声明 仓促答复将不胜感激 include
  • 使用react-native切换手电筒(世博会)

    我正在尝试从我的反应本机导出应用程序切换手电筒 这Plugin不起作用 因为我正在使用 expo flashMode 属性世博相机组件允许我在拍照时切换闪光灯 有没有办法以其他方式切换手电筒 解决了React Native Expo 项目中
  • 单元测试 typescript 指令模板 karma-jasmine,html 未定义

    最近 我开始使用 karma jasmine 对我的打字稿代码进行单元测试 在为服务和简单 指令创建并运行测试用例后 我为自定义指令创建了一个测试用例 该测试用例有一个控制器 正在注入一项服务 并使用 4 个作用域变量与外界通信 这是一个简
  • Google Apps 脚本 - 从 HTML 创建 PDF 时不显示图像

    我正在尝试编写一个脚本 该脚本将输出带有已输入表单的值的 PDF 在此 PDF 中 我想在页面顶部添加一个徽标 该徽标是 Google Drive 文件夹中的图像 基于这个问题 和其他 图像需要转换为 base64 然后添加到 HTML 我
  • 泛型类型的实例[重复]

    这个问题在这里已经有答案了 我的问题是这样的 为什么不能用 new T 实例化泛型类型 而用类 Class 的 newInstance 就可以呢 您需要使用反射 newInstance 因为在编译时 需要链接其构造函数的类是未知的 所以编译
  • 如何使用JavaScript函数重定向到Struts2中的另一个jsp页面

    我想在打开时使用 JavaScript 函数将 JSP 重定向到另一个页面BeforeLogin页 但我收到以下错误消息 找不到 Struts 调度程序 这通常是由于使用 Struts 标签而没有关联的过滤器造成的 Struts 标签仅在请
  • 如何将 eval() 函数与变量列表一起使用?

    我有一个字符串形式的函数列表 y x 3 x 2 y 2 17 2 functions in list 我有一个清单Sympy Symbol对象 基本上是变量 whos name属性对应于函数字符串中的变量名称 Symbol x Symbo
  • 客户可配置的 ASP.NET 网站安全性,用于对页面和按钮访问进行细粒度控制

    我有一个 ASP NET 2 0 还没有 ajax 网站 将以编译的形式部署在多个客户站点上 通常该站点仅是 Intranet 一些客户信任他们的所有人 并且不关心限制对网站和 或页面功能的访问 另一些客户不信任任何人 只希望某些人和 或组
  • 哪个 Visual Studio 组件包含 MSVC Hostx 文件? [复制]

    这个问题在这里已经有答案了 My NET溶液含有一个editbin命令输入PostBuild events 我们尝试创建一个Docker容器用于编译我们的解决方案 为此 我们安装了VS17与安装人员 我们找不到哪个成分我们应该选择得到edi
  • 在Python中读取JSON格式的字符串

    我在 python 中有一个简单的 Websockets 服务器 它从 Android 应用程序客户端接收消息 我尝试以 JSON 格式从客户端生成消息负载 但我觉得 仅当它在字符串中时才起作用 我发现的一种解决方案是保留消息字符串 但采用
  • PHP中检查变量是否为数字和正整数?

    例如 说 如何检查变量是否存在 post id是一个数字 并且是一个正整数 即 0 9 不是浮点数 分数或负数 EDIT 无法使用is int cause GET返回一个字符串 认为我需要使用intval or ctype digit 后者
  • Windows 上的 Eclipse 上的 OpenCV

    我正在尝试在 Windows 上安装 opencv 这是我的步骤 从网站下载opencv 2 4 3 运行exe 将文件夹解压到同一路径中 打开eclipse 之前设置并配置了MinGW 创建了新项目 XYZ 添加了新文件夹 src 添加了
  • 在 nlog 中以编程方式创建数据库以启用 DatabaseTarget

    我正在 C 中创建一个 DatabaseTarget 对象 并使用它将数据记录到 NLog 数据库中 如果数据库不存在 nlog 目标将失败 我想检查数据库是否存在 以及是否没有创建它和日志表 我可以看到 targetDB Install
  • 数据透视表手动更新不起作用

    我有一个数据透视表 我试图根据数组中的值选择某些数据透视项 我需要这个过程更快 所以我尝试使用 application calculation xlcalculationmanual 和pivottables manualupdate tr
  • 检查曲线是否闭合

    如何有效地检查曲线是否闭合 例如看这个图 曲线在黑色背景上始终为白色 我尝试使用洪水填充算法 但在这种情况下效果不佳 我不明白如何修改它 这里是代码 public static boolean isWhite BufferedImage i
  • 锁定文件以便在 Windows 上访问

    Using portalocker我们可以通过以下方式锁定文件的访问 f open M99 r portalocker lock f portalocker LOCK EX The lock可以使用删除该文件 f close or port
  • 对 Hashmap 内的对象值进行排序

    我想按对象的值对哈希图进行排序 在本例中 按国家 地区代码 KEY OBJECT String LoyaltyCountry country name country code country loc 我的代码如下 public stati
  • 名称中带有点的 Java 包文件夹

    是否按照规范 给定MyClass java文件包含 package com mycorp foo public class MyClass public static void main String args System out pri