# 使用与 JAR 相关的 API

> 原文： [https://docs.oracle.com/javase/tutorial/deployment/jar/apiindex.html](https://docs.oracle.com/javase/tutorial/deployment/jar/apiindex.html)

Java 平台包含几个用于 JAR 文件的类。其中一些 API 是：

*   [`**java.util.jar** `包](https://docs.oracle.com/javase/8/docs/api/java/util/jar/package-summary.html)
*   [`**java.net.JarURLConnection** `类](https://docs.oracle.com/javase/8/docs/api/java/net/JarURLConnection.html)
*   [`**java.net.URLClassLoader** `类](https://docs.oracle.com/javase/8/docs/api/java/net/URLClassLoader.html)

为了让您了解这些新 API 开辟的可能性，本课程将指导您完成名为 JarRunner 的示例应用程序的内部工作。

## 示例 - JarRunner 应用程序

JarRunner 允许您通过在命令行上指定 JAR 文件的 URL 来运行捆绑在 JAR 文件中的应用程序。例如，如果名为 `TargetApp` 的应用程序捆绑在 `http://www.example.com/TargetApp.jar` 的 JAR 文件中，则可以使用以下命令运行该应用程序：

```
java JarRunner http://www.example.com/TargetApp.jar

```

为了让 JarRunner 工作，它必须能够执行以下任务，所有这些都是通过使用新 API 完成的：

*   访问远程 JAR 文件并与其建立通信链接。
*   检查 JAR 文件的清单，以查看存档中的哪些类是主类。
*   加载 JAR 文件中的类。

JarRunner 应用程序由两个类组成， `JarRunner` 和 `JarClassLoader` 。 `JarRunner` 将大部分 JAR 处理任务委托给 `JarClassLoader` 类。 `JarClassLoader` 扩展了 `java.net.URLClassLoader` 类。在继续课程之前，您可以浏览 `JarRunner` 和 `JarClassLoader` 类的源代码：

*   [`JarRunner.java`](examples/JarRunner.java)
*   [`JarClassLoader.java`](examples/JarClassLoader.java)

本课有两个部分：

## [JarClassLoader 类](jarclassloader.html)

本节介绍 `JarClassLoader` 如何使用一些新 API 来执行 JarRunner 应用程序工作所需的任务。

## [JarRunner 类](jarrunner.html)

本节总结了包含 JarRunner 应用程序的 `JarRunner` 类。