Java如何区分库和应用程序?

时间:2011-03-03 21:23:24

标签: java shared-libraries

Windows应用程序区分库(DLL)和应用程序(EXE)。 Java是否具有同等的区别?

5 个答案:

答案 0 :(得分:6)

有点。

大多数Java程序都存储在.jar文件中。

如果.jar指定了main方法,则可以类似于.exe启动程序执行。您可以使用java -jar program.jar

执行此操作

但是任何.jar文件都可以从另一个加载,其中的代码加载,类似于.dll。即使'library'jar有main方法,也可以自动调用它。

答案 1 :(得分:3)

问题是荒谬的。 Java编译为由虚拟机解释的字节码类文件。

你可以在zip文件中抛出一堆类文件并将其称为jar,但Java没有exe或dll的类似物。

答案 2 :(得分:0)

Java有jar文件(Java ARchive)。这可以作为主程序或附加库运行。

答案 3 :(得分:0)

你可以说“可执行JAR”(在其清单中声明了一个主类)是EXE的Java等价物,而其他JAR更像是DLL。

自从AFAIK以来,相似性可能比您实现的更接近,在Windows中,差异也相当小,文件格式大致相同,您可以通过命令行从DLL执行代码。

答案 4 :(得分:0)

Java相当于一个库是一个jar文件,您可以将代码打包在一起。

此外,您可以将清单文件打包到名为META-INF / manifest.mf的jar中,并带有一个指令,该指令表示当Java运行时以下列方式调用jar时运行此类: java -jar MyApp.jar

这相当于库和可执行文件。