运行Java程序时JVM遵循的顺序是什么?

时间:2013-04-27 11:32:06

标签: java jar jvm javac

我需要知道运行用户程序时JVM遵循的顺序。假设用户已经创建了一个程序 Runner.java ,并为此命名 runner.jar 创建了一个jar文件。

现在,如果我

set classpath=%classpath%;c:\myapp.jar;%Java_Home%\lib\core.jar;runner.jar;

我从命令行运行程序:

java Runner

并且程序运行。我需要知道JVM将来自JVM库 - >当前目录 - >类路径序列,然后它将运行程序或它将遵循的一些其他序列。

该程序的查找顺序是什么?

1 个答案:

答案 0 :(得分:1)

加载顺序

以下是序列:

enter image description here

当前目录与类路径

默认情况下,当前目录是类路径。但是,一旦设置了CLASSPATH环境变量,它将no longer be searched

  

默认类路径是当前目录。设置CLASSPATH变量或使用-classpath命令行选项会覆盖该缺省值,因此如果要在搜索路径中包含当前目录,则必须包含“。”。在新设置中。

如果要包含当前目录,请添加一个点。

enter image description here

按顺序搜索类路径。您可以将其移动到任何位置以控制是首先搜索还是最后搜索,如上例所示。