1 jar包更接近于动态链接库
java在编译的时候,尽管import了其它的jar包,但是它并没有将其它jar包中的源码拷贝到自己的class文件中,它只是使用了jar包中的名字。
而在执行的时候,自己和依赖的jar包都加载进jvm中,在执行前完成链接,这个过程更加类似于动态链接库。
2 jvm找jar包
各类class loader去指定的目录中找jar包。
bootstrap class loader去jre/lib目录,
extention class loader去jre/lib/ext目录,
application class loader去classpath指定的目录。在执行的时候手动指定classpath,
java -classpath [some path to the jar, for example -classpath c:\\java\\myclasses.jar] myprogram
3 eclipse中的classpath,即对第三方库的使用