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

jar文件到底包含什么?

向嘉誉
2023-03-14
问题内容

作为实习生,我在项目中使用公司代码,并且通常会向我发送jar文件以供使用。我将其添加到构建path中,Eclipse并且通常一切都很好。

但是,我很好奇,每个类包含什么,当我尝试打开jar文件中的一个类时,它告诉我需要一个源文件。

这是什么意思?我来自 C / C ++
背景,因此jar类似于已经编译的.o文件,我所看到的只是.h东西?还是jar我正在使用的文件中包含加密的实际代码,所以我无法读取它?

感谢所有的答案!

编辑:
谢谢,伙计们,我知道这有点像存档,但是我很困惑为什么当我尝试打开.class文件时,我得到了一堆随机字符。当我尝试.o在C中打开文件时,输出类似,因此我只是想确保。
谢谢!


问题答案:

一个JAR文件实际上只是一个ZIP文件。它可以包含任何内容-通常包含已编译的Java代码( .class),但有时也包含Java源代码( .java)。

但是,Java可以反编译-如果开发人员混淆了他的代码,则您将不会获得任何有用的类/函数/变量名称。



 类似资料:
  • 我应该添加什么jar-file依赖项来解决这个导入?

  • 我正在编写一个小的Java库,其中包含我通常在大多数android应用程序中包含的相关代码。我决定将库导出为一个jar文件,然后将该文件放到我未来项目的libs文件夹中。 null 现在,当我在我的一个android应用程序中使用这个jar时,除了Doc部分之外,所有的一切都像预期的那样运行。当我悬停在我的库的类和方法上时,我看不到我编写的文档注释。 Q1:我是不是又少了一步? Q2:jar文件应

  • 问题内容: 在并行流上使用操作时,OCP考试手册指出,论点必须遵守某些原则。这些原则如下: 必须定义身份,以便对于流u中的所有元素,combiner.apply(identity,u)等于u。 累加器运算符op必须是关联且无状态的,等于。 组合器运算符还必须是关联且无状态的,并且必须与该身份兼容,以使得对于和 都等于。 本书提供了两个示例来说明这些原理,请参见下面的代码: 关联的示例: 这本书怎么

  • 我有一个结构如下的maven项目: 我希望maven jar插件在构建jar文件时打包到数据库文件夹中。我尝试过包含这里概述的内容:https://maven.apache.org/plugins/maven-jar-plugin/examples/include-exclude.html,但它找不到目录“../database”(或../../database或../../../database

  • 问题内容: 我写了一个Java程序,它实际上是现有命令行程序的gui。所以基本上我的程序就是。因此,我已经使用Eclipse IDE将java源文件导出为可执行jar文件,并且效果很好,但是我确实需要将此myprogram.exe包含在生成的jar文件的目录中才能正常工作。 现在,我正在寻找一种在jar文件中包含myprogram.exe的方法,以便可以将其捆绑为一个文件,因此首选使用Eclips

  • 我正在尝试制作一个.jar文件(这是我第一次),我很困惑。我了解如何使用命令提示符创建一个简单的jar文件,但对于我的程序,我导入了JavaMail API和我创建的另一个库(名为ArrayLibrary,其中填充了排序方法)。我如何在一个jar文件中创建这些?