「みんなの翻訳」は、世界中の文書をみんなで協力して翻訳するサイトです。

みんなの翻訳ロゴ
ブクタブ
翻訳サイト

カテゴリ一覧

このサイトについて 新規登録はこちら お試し翻訳

一覧

2012/05/01

2012-04 辞書「英辞郎」使用可能ユーザ…

先月までのポイントランキングを元に抽選した結果、今月の辞書「英辞郎」が使用可能な方々は以下となりました。…

List

kyo

English⇒Japanese

hanako

English⇒Japanese

tkkobe

English⇒Japanese

ozawa

English⇒Japanese

ホームWikipedia翻訳一覧 > Wikipedia翻訳

Wikipedia翻訳

Javaクラスローダー

 [[en:Java Classloader]](21:11, 31 January 2012 UTC)より翻訳

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

== JAR地獄 ==

[[DLL地獄]]に似た言葉として'''JAR地獄'''という言葉があるが、これはクラスのロードが思ったとおりに行われない状況全般を指して使われる<ref>http://incubator.apache.org/depot/version/jar-hell.html</ref>。
JAR地獄の発生する状況としては次の3つがある。

* 一つ目は、Javaアプリケーションの開発や配置の際に、たまたま同じライブラリの2つのバージョンが同時に利用可能になってしまった場合である。この場合、処理系はエラーを発生させず、単純にどちらか一方のライブラリからのみクラスをロードする。使用するライブラリのリストに新しいライブラリを追加(置き換えではなく)した場合、アプリケーションは古いライブラリを使っているのと同じ振る舞いになるものと考えられる。

* 問題が発生するもう一つの状況は、2つのライブラリAとB(または、アプリケーションAとそれが使っているライブラリB)が、別のライブラリCの異なるバージョンをそれぞれ要求している場合である。 ライブラリCの各バージョンでクラス名が変わらないなら、ライブラリCの各バージョンを一つのクラスローダで同時にロードする方法は存在しない。

* JAR地獄で最も複雑な問題は、クラスローダーの複雑性によって発生する。Javaプログラムでは単一の「フラットな」クラスローダーだけでなく、ネストした、協調して動作する複数の(場合によっては非常に多くの)クラスローダーを使用できる。別々のクラスローダーによってロードされたクラスは複雑に相互作用するが、開発者がその機序を十分に理解していない場合、不可解なエラーやバグが発生する<ref>http://www.ibm.com/developerworks/jp/websphere/library/java/j2ee_classloader/2.html#N10118</ref>。

[[OSGi]]アライアンスは、現在および将来において、広く利用されているJavaME, SE, EEの各VMでJAR地獄を解決するべく、モジュール方式のフレームワークを策定している(1998年のJSR 8から始まっている)。これは、JAR[[manifestファイル|manifest]]中に書かれたメタデータを使い、JARファイル(''バンドル''と呼ばれる)をパッケージ単位で操作するものである。バンドルはパッケージをエクスポートしたりインポートしたり、パッケージをプライベートに保っておいたりすることができ、これにより基本的なモジュール化と、バージョン付けされた依存関係管理が行える。

JAR地獄に対する改善策として、2005年に[[Java Community Process]]によるJSR 277の策定が始まり、その結果として[[Java Module System]]が定義された。これは、配布フォーマット、モジュールのバージョン体系、共通モジュールのリポジトリ(目的は[[.NET Framework]]の[[Global Assembly Cache]]に類似)をJavaに導入することを目的としていたが、2008年12月、SunはJSR 277を保留とすることを発表した<ref>http://www.osgi.org/News/20081217</ref>。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 
PDF
更新日:2012-02-19 22:18:35 satob 2  del.icio.usに追加   はてなブックマークに追加   twitterに投稿   facebookでshare
[ 原文 ] http://en.wikipedia.org/wiki/Java_Classloader Creative Commons License この作品は、クリエイティブ・コモンズ・ライセンスの下でライセンスされています。
クリエイティブ・コモンズ・ライセンス
翻訳者ページをみる

この記事の翻訳者

satob さんの翻訳記事

Javaクラスローダー

[[en:Java Classloader]](21:11, 31 January 2012 UTC)より翻訳 …2012-02-19 22:18:35

バッファオーバーラン

[[en:Buffer overflow]] (05:08, 19 December 2011? UTC)より翻訳 [[コンピュータセキュリティ]]および[[プログラミング]]における'''バッファオーバーフロー'''(''buffer overflow'')ま…2012-02-19 16:07:32

Mac 68Kエミュレータ

[[en:Mac 68K emulator]] (18:58, 14 December 2011 UTC) より翻訳 {{翻訳中途|1=[http://en.wikipedia.org/wiki/Mac_68K_emulator 15:10, 5 August 2009]|date=2009年11月}} '''Mac 68K…2012-01-03 01:44:29

暗号文単独攻撃

[[en:Ciphertext-only attack]] (11:00, 22 June 2011‎ UTC) より翻訳 [[暗号理論]]における’’’暗号文単独攻撃’’’(''ciphertext-only attack (COA)'')または’’’既知暗号文攻撃’’’(''know…2011-12-25 22:22:00