Java Web Start
Java Web Startアプリケーションの大きさを減らすために、サン・マイクロシステムズはJava 1.5.0においてPack200という圧縮方式を導入した。この圧縮方式では、大きなjarファイルがjavaクラスだけを含む場合、そのjarファイルを元の9分の1の大きさまで圧縮できる。
Java Web Startが最初に登場したときはPack200をサポートしていたが、当初はこの機能をセットアップするために、サーバ側の協力と、ある程度の専門技術が必要であった。サン・マイクロシステムズが Java SE 6u10を導入したとき、Pack200サポートはサーバ側の特別なサポートの必要なしに使えるようになった。アプリケーション開発者はこの機能の有効/無効をJNLPファイルの中で設定できる。
遅い接続条件の下では、Pack200はアプリケーションの起動時間とダウンロード時間の性能を加速させる。
開発者はJNLP拡張子をつけた特別なXMLファイルを作る(JNLPファイル)。このファイルはアプリケーションの要求事項、コードの場所、パラメータ、および(もしあれば)追加的な権限を指定したものだ。ブラウザはこのファイルを他のファイルと同様にダウンロードし、(そのMIMEタイプとして指定されたapplication/x-java-jnlp-fileに従って)それをWeb Startツールで開く。Web Startツールは、必要なすべてのリソースをダウンロードし、アプリケーションを起動する。
Java Web Startはjavax.jnlpパッケージ内の一連のクラス群を提供している。これらがアプリケーションに対して様々なサービスを提供する。これらのサービスのほとんどをSun社が設計した。その目的は、アプリケーションの動作を許可された操作の範囲内に制限しつつ、注意深く制御された範囲内のリソース(たとえばファイルや、システムクリップボードなど)にはアクセスを許可することにある。
サン・マイクロシステムズは2001年3月にWeb Startのバージョン1.0を導入した。一方、64ビット版Windowsへのサポートは、(64ビット版Javaが最初に使えるようになった時よりも後になって)Java 6のみで追加された。J2SE 1.4 以降、Web StartはJava実行環境(Java Runtime Environment、JRE)にjavawsという名前でデフォルトで入ってくるようになったので、コンピュータ管理者は、Web Startを別途インストールする必要はもはやなくなった。